Windows CE (.NET) とか IoTとか

組込みWindows と IoTの話を扱います

CE6のCEUpdateCheckで特定パスのアップデートを探す方法

今回は小ネタです。

以前からQFEツール"CEUpdateCheck"をネタにしていますが、今回は特定パス/ファイルのQFEアップデートがインストールされているか/そもそもリリースされているかを調べる方法です。

たとえばこんな時に使います。

1. あるビルドツリーのファイルが最新状態かどうか調べる

2. アップデートをインストールする前に、そもそもそのようなQFEアップデートが存在するかどうかを調べる

1. はある意味当たり前の使用方法ですが、2.を行うことによって、QFEをインストールする前にQFEのリリース状況を調べることができます。

具体的には以下のようにします。

- VS2005/Platform BuilderのToolsメニュー/"Platform Builder for CE 6.0" から "CE Update Check" を起動します。

- "Verify Updates" ボタンを押します。

これでリストビューにリリースされているQFEの一覧が表示されます。アップデートがインストールされているかをQFEリリース日付ごとに確認することができます。(情報取得に多少時間がかかります。)

- (ひととおりチェックが終わったところで)"Sort by" リストボックスで "File Path"を選択します 。

これをやると下のような画面になります。

Ceupdatecheck2

↑クリックすると拡大します

たとえば"\WINCE600\public\common\oak\drivers\netsamp"フォルダにはethmanのアップデートが存在し、正常にインストールされていることがわかります。また、ethman以外のアップデートは存在しないみたいですね。

一般にソースコードのアップデートが存在する場合には、ビルド済み.lib や .pdbもQFEで提供されます。ethmanの例では"\WINCE600\public\common\oak\lib\{CPUタイプ}\{debug,retail}"のフォルダアイコンをクリックすると、右側のリストがこのフォルダのアップデート一覧になります。この中にetherman.lib / ethman.pdb のアップデートが存在することが確認できます。(残念ながらファイル名ソートされませんが...)

ちなみにアイコンの意味は

- 緑のチェックマーク : 最新状態です

- 赤のビックリマーク : インストールされているようだがモジュールチェックサムが最新のQFEのものと異なる

- 黄色のビックリマーク : QFEが存在するがインストールされていません

となります。QFEが存在するかはインターネットから取得し、開発環境にインストールされているかどうかは、Embedded CE6ではPCの\Windowsフォルダの WinCEPB60.ini ファイルを利用してチェックされます。(CE5.0ではWinCEPB50.iniです)