2016年06月25日
急なWinCE系組込開発をした際の問題点と所感
・経緯
現在、某物流系企業の常駐PGとして従事しております。
倉庫業では一般的業務システムだけではなく、
現場での検品などに利用するハンディ端末の開発を行うこともあります。
そんな中いつも突拍子もなく仕事を依頼してくる顧客から、
某アイドル業界の重鎮のようなノリで、
「YOU,ハンディ開発やっちゃいなよ」
ってな感じで急に依頼が来ました。
ちなみに過去のハンディ開発は独自 OS,独自言語(BASIC拡張)しかなく、
Win系は初めてな上、納期は4日、開発は私一人(ノウハウなし)
・端末仕様の確認
OS:WindowsCE Embedded7(WinCE系は初めて)
開発の制限:VisualStudioを利用すること
端末製造メーカの中の人談:「え、今まで独自 OSの組み込み開発しか経験がないって?
WinOS&VSを利用できるということはデスクトップアプリ感覚で楽勝ですよ!」
・開発仕様の選定
言語:C#.net
DB:SQLite3
選定理由:言語はVBよりC#の方がコードリーディングのしやすさから好み。
DBについては普段SQLServer系しか触っていなかったので冒険(出来心)
補足:一定の枠内であれば開発仕様を好きに選定していい現場です。(開発は私一人なのでなおさら)
・開発に際しての技術的問題点
.netなのにイベント駆動形式だけで完結できない
→「え、ピッてやったらイベント発生しないの!?」
ってまず絶望しました。
スキャンしたデータを内部的にキャッチして処理する際に、
適切なイベントがなくWindowsMsgFormクラスを継承したクラスを作り、
それをTimerイベントに結びつけて”.net”っぽく処理してみました。
.netの情報はほぼネットに転がっておらず、そのアイデアが湧くまでに時間がかかった。
WinOSゆえの考慮の必要性
→見た目がPCライクなのでユーザさんが余計なところを触ることへの制御が必要になります。
理想は通常の組み込みのように開発アプリのみを表示させることですが、
あまりその辺の制御がしやすいOSではなかったです。
例えばステータスバー1つ消すだけでもレジストリをごにょごにょするか、
小難しいコードを書く必要がありました。
・開発を終えての所感
テキストエディタでメーカ固有BASIC言語で開発・メーカ固有コンパイラでコンパイルして、
現代っ子の私は何度も発狂した過去があります。
そのことからIDEが使えるだけでも”楽勝ムード”が出ておりましたが、
Winアプリ開発より考慮することが多く意外と手こずりました。
また、セキュリティ対策を伺ったところ、
「WinCEにハッキングしようとする人はいません!
また、そのことからセキュリティソフトはありません」
と言われびっくりしました。
確かにそんなニッチなところを攻めてくる人は少ないだろうけど、
ハンディ画面から普通にネットワークに接続してごにょごにょできるのに、
未対策で放置する風土ってどうなんだろう。。。
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/5191877
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック