この回答では、公式にサポートされていないオペレーティング システムに Platform Builder 5.0 をインストールして実行する方法について説明しています。
Windows Server 2008 および 2012
この手順は、次の場合に機能することがわかっています。
- Windows Server 2008 (32 ビット)
- Windows Server 2012
- Windows Server 2012 R2
Windows ドメインに参加する前に、 Platform Builder をインストールすることをお勧めします。ドメイン ユーザーとしてログインしているときに、Platform Manager コンポーネントを登録する際に問題が発生しました。以下の説明も参照してください。
ウイルス保護ソフトウェアが .NET Framework 1.1 のインストールを妨げる可能性があります。少なくとも、これは Symantec Endpoint Protection の問題です。インストールを開始する前に、セキュリティ製品を削除する必要がある場合があります (これらは後で再インストールする場合がありますが、Symantec EP の完全版と基本版については以下の注を参照してください) 。
PB5 をインストールするには、まず、インストール CD (またはマウントされた .iso) の内容をローカル フォルダー (以降、インストール フォルダーと呼びます) にコピーします。
.msi エディター ( OrcaMicrosoft Windows CE 5.0.msi
など) を使用して、インストール フォルダーから次のエントリを削除します。
- OSバージョンチェック(表
LaunchCondition
、アクション(MsiNTProductType=1 OR ...
)
- エミュレータ デバイス ドライバ (表
InstallExecuteSequence
、アクションCA_InstallVMMDriver.3D2F911E_A60A_4C07_8F7D_5306DC073E9A
)
インストールフォルダから、この順番で実行
ISScript8.msi
(InstallShield 8.0 スクリプト エンジンをインストールします)
dotnetfx.exe
(.NET Framework 1.1 をインストールします)
Microsoft Windows CE 5.0.msi
(プラットフォーム ビルダー 5.0 をインストールします)
Platform Manager コンポーネントの登録ステップで、インストールがハングしているように見える場合があります。数分後に続行する必要があります。10 分経っても問題が解決せず、マシンが Windows ドメインに参加している場合は、タスク マネージャーでインストーラーを強制終了し、ドメインを離れて、再度インストールを試みます (インストールの完了後に再参加できます)。
インストール中に、互換性の問題に関する警告が表示されます。[今後この警告を表示しない] を選択し、[ヘルプを表示せずにプログラムを実行する] をクリックします。
インストールが完了したら、次のようにレジストリ エントリを追加します。
32 ビット システムにインストールする場合:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools]
"SharedFilesDir"="C:\Program Files\Common Files\Microsoft Shared\"
それ以外の場合 (64 ビット システムにインストールする場合):
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Shared Tools]
"SharedFilesDir"="C:\Program Files (x86)\Common Files\Microsoft Shared\"
次に、必要に応じて Windows CE / Platform Builder の更新プログラム (つまり、Microsoft が提供する「月次更新プログラム」) をインストールします。
オプション: Windows CE ターゲットのいずれかでCJKサポートが必要な場合は、makeimg フェーズでのエラーcenlscmp
を回避するためにツールを更新する必要があります。このバグは Platform Builder 6.0 (PB6) で長い間修正されていますが、PB5 バージョンは取り残されています。CJK をサポートするには、PB6 インストールからコピーする必要があります。つまり、新しい WINCE500 ツリーの対応するフォルダにコピーします。私がテストしたのは PB6 バージョンのみであることに注意してください。新しいバージョンも機能する可能性があります。cenlscmp
C:\WINCE600\PUBLIC\COMMON\OAK\BIN\I386\cenlscmp.exe
オプション: SDK をビルドするためのサポートが必要な場合は、Platform Builder ヘルプ ファイルのコピーを作成する必要があります。そうしないと、SDK ビルダーでハードコーディングされた想定によってビルドが失敗します。C:\Program Files (x86)\Windows CE Platform Builder\5.00\cepb\help
ディレクトリを にコピーしC:\Program Files\Windows CE Platform Builder\5.00\cepb\help
ます。
プラットフォーム ビルダーを起動します。
互換性の問題に関する警告が表示されます。[今後この警告を表示しない] を選択し、[ヘルプを表示せずにプログラムを実行する] をクリックします。
オプション:メイン ウィンドウで、[ツール] | [ツール] をクリックします。カスタマイズします。[ Build OS ] メニューを 1 回クリックして開きます。[ Build and Sysgen ] メニュー項目をメニューの外にドラッグし、カーソルに小さな「X」が表示されたらドロップします。これにより、誤ってクリックした場合に Platform Builder の再インストールが必要になる危険なコマンドが削除されます。[閉じる]をクリックして、 [カスタマイズ] ダイアログ ボックスを閉じます。
Platform Builder 5.0 は、IDE 自体、ビルド システム、ヘルプ システム、デバッガー、およびランタイム ライセンス ツールを含めて、すぐに使用できます。
私がテストしていない機能のうち、動作する可能性がある機能と機能しない可能性のある機能には、CETK とエミュレーターが含まれます (エミュレーター デバイス ドライバーを .msi から削除する必要があったため、エミュレーターが機能する可能性はほとんどありません)。
Symantec Endpoint Protection を使用している場合、完全版ではpbxmlutils
重要な Platform Builder ツールの実行が妨げられる可能性があることに注意してください。これは、 Basicバージョンの問題ではないようです。
最後のハードルは、デバッガーのトラフィックを許可するようにファイアウォールを構成することです。これを行うには、セキュリティが強化された Windows ファイアウォールを開き、
- Inbound Rulesの下で、New Rule...をクリックします。
- プログラムを選択、次へ
- パス を入力し、[次へ
%ProgramFiles% (x86)\Windows CE Platform Builder\5.00\CORECON\BIN\cesvchost.exe
] をクリックします。
- [接続を許可する]が選択されていることを確認し、[次へ]
- Private と Domainが選択されていることを確認します (ただし、本当に必要な場合を除き、Publicは選択しないでください)、次へ
- 「Platform Builder 5.0 debugger - cesvchost」などの名前を入力し、完了します。
パスで上記を繰り返します%ProgramFiles% (x86)\Common Files\Microsoft Shared\Windows CE Tools\Platman\bin\cemgr.exe
。
Platform Builder は、BOOTME フレームを受信し、イメージをアップロードし、カーネル デバッガーを使用してターゲットに接続できるようになりました。
Windows 7 および 8
上記の手順は、64 ビットの Windows 7 または 8 では機能しません (32 ビットはテストされていません)。
説明されているように .msi を変更すると、プラットフォーム マネージャー コンポーネントの登録手順でインストールがハングします。プラットフォーム マネージャー コンポーネントをインストーラーから削除すると、ヘルプ システムの登録の失敗やいくつかの一般的なコントロールなど、他の多くの問題が発生します。さらに重要なことは、Platform Manager が見つからない場合、Windows CE/Platform Builder の更新をインストールすることができず、重要な CE プロジェクトを構築することが事実上不可能になります。
ウィンドウズ10
未検証。