Windows Mobile デバイスをプロビジョニングする C# プログラムを作成したいと考えています。DMProcessConfigXMLという関数に関する MSDN ドキュメントを見つけましたが、この関数の使用方法に関する説明はありません。
Windows Mobile アプリでこの機能を使用するにはどうすればよいですか? pinvokeの使用に関係があると思われます。
ありがとう、
ポール
Windows Mobile デバイスをプロビジョニングする C# プログラムを作成したいと考えています。DMProcessConfigXMLという関数に関する MSDN ドキュメントを見つけましたが、この関数の使用方法に関する説明はありません。
Windows Mobile アプリでこの機能を使用するにはどうすればよいですか? pinvokeの使用に関係があると思われます。
ありがとう、
ポール
マネージコードから、Microsoft.WindowsMobile.Configuration名前空間にあるConfigurationManager.ProcessConfigurationを呼び出すことができます。msdn サンプルコードは次のとおりです。
XmlDocument configDoc = new XmlDocument();
configDoc.LoadXml(
"<wap-provisioningdoc>"+
"<characteristic type=\"BrowserFavorite\">"+
"<characteristic type=\"Microsoft\">"+
"<parm name=\"URL\" value=\"http://www.microsoft.com\"/>"+
"</characteristic>"+
"</characteristic>"+
"</wap-provisioningdoc>"
);
ConfigurationManager.ProcessConfiguration(configDoc, false);
P/Invokeする必要はありません。
DMProcessConfigXML に何を送信するかについての回答は MSDN にありますが、理解するのは簡単ではありません。Configuration Service Providersのドキュメント を調べる必要があります。
基本的に、ある種のシステム パラメータをクエリまたは設定する XML を指定すると、結果として XML が返されます。デバイス上のほぼすべてのサービス プロバイダーがあります。必要なものを具体的に指定する必要があります。そうすれば、必要なドキュメントとサンプルを紹介できます。
XML を指定します。
<wap-provisioningdoc>
<characteristic type="Registry">
<characteristic type="HKCU\ControlPanel\Home">
<parm-query name="Timeout"/>
</characteristic>
</characteristic>
</wap-provisioningdoc>
結果の XML は次のようになります。
<wap-provisioningdoc>
<characteristic type="Registry">
<characteristic type="HKCU\ControlPanel\Home">
<parm name="Timeout" value="10000"/>
</characteristic>
</characteristic>
</wap-provisioningdoc>
これは簡単な例です。ネットワーク設定のセットアップ、メール アカウントのセットアップなど、他にも多くのことができます。
また、WM の新しいバージョンでは、より多くの CSP が追加されています。たとえば、WM6.1 は、デバイス暗号化構成サービス プロバイダーを追加して、WM6.1 デバイスで完全なデバイス暗号化を照会/有効化/無効化します。
更新: 間違った例をコピーしました!! DMProcessConfigXml は、OMA DM プロビジョニング XML ではなく、OMA クライアント プロビジョニング XML を使用します。
MSDN を調べましたが、実際に入手できる情報はほとんどありません。私はいくつかのグーグル検索を行い、この例を見つけました。また、CF オープン ソース プロビジョニング アプリケーションに関するこのブログ エントリ。
利用可能な例のほとんどは C++ です。C# から呼び出す場合は、pinvoke を使用する必要があります。pinvoke.netは素晴らしいリソースの 1 つです。ここでは、必要な署名を見つけることができます。