« WINCE下的字符串操作函数奥林巴斯E系列 (E420 E510 E620)工程模式方法 可查看快门次数 »

Windows Mobile,DMProcessConfigXML 使用实例

摘自:http://www.cnblogs.com/biosli/articles/1414259.html


Windows Mobile,DMProcessConfigXML 使用实例

 

最近遇到了创建连接点的问题(飞信就能自己创建来着),到网上搜罗了一下解决方法。这里总结一下:

这些方法主要是针对函数DMProcessConfigXML里面的第一个参数来的,函数的具体使用方法参见MSDN

MSDN没有对第一个参数做太多解释,下面提供一些使用实例:


LPCWSTR strFavoriteXml =         
L
"<wap-provisioningdoc>"
  L
"<characteristic type=\"CM_GPRSEntries\">"
    L
"<characteristic type=\"Internet Connect\">"
      L
"<parm name=\"DestId\" value=\"{436EF144-B4FB-4863-A041-8F905A62C572}\" />"
      L
"<characteristic type=\"DevSpecificCellular\">"
        L
"<parm name=\"GPRSInfoAccessPointName\" value=\"cmnet\" />"
      L
"</characteristic>"
    L
"</characteristic>"
  L
"</characteristic>"
L
"</wap-provisioningdoc>"//DestID是自己定义的GUID,当然,也有已经定义好的GUID可以直接用         

LPWSTR pszwXMLout 
= NULL;
HRESULT hr 
= DMProcessConfigXML(strFavoriteXml, CFGFLAG_PROCESS, &pszwXMLout);
if ( pszwXMLout )
{
     delete [] pszwXMLout;
     pszwXMLout 
= NULL;

  


CString strFavoriteXml = 
L
"<wap-provisioningdoc>" 
  L
"<characteristic type=\"CM_Networks\">"
    L
"<characteristic type=\"Test_GPRS\">"
      L
"<parm name=\"DestId\" value=\"{D1D06580-C364-55ec-9421-6ACF34129C58}\" />"
    L
"</characteristic>"
  L
"</characteristic>"
  L
"<characteristic type=\"CM_GPRSEntries\">"
    L
"<characteristic type=\"Test_GPRS\">"
      L
"<parm name=\"DestId\" value=\"{D1D06580-C364-55ec-9421-6ACF34129C58}\" />"
      L
"<characteristic type=\"DevSpecificCellular\">"
        L
"<parm name=\"BearerInfoValid\" value=\"1\" />"
        L
"<parm name=\"GPRSInfoValid\" value=\"1\" />"
        L
"<parm name=\"GPRSInfoProtocolType\" value=\"2\" />"
        L
"<parm name=\"GPRSInfoL2ProtocolType\" value=\"PPP\" />"
        L
"<parm name=\"GPRSInfoAccessPointName\" value=\"cmwap\" />"
        L
"<parm name=\"GPRSInfoAddress\" value=\"\" />"
        L
"<parm name=\"GPRSInfoDataCompression\" value=\"1\" />"
        L
"<parm name=\"GPRSInfoHeaderCompression\" value=\"1\" />"
        L
"<parm name=\"GPRSInfoParameters\" value=\"\" />"
      L
"</characteristic>"
    L
"</characteristic>"
  L
"</characteristic>"
  L
"<characteristic type=\"CM_ProxyEntries\">"
    L
"<characteristic type=\"WAP\">"
      L
"<parm name=\"SrcId\" value=\"{D1D06580-C364-55ec-9421-6ACF34129C58}\" />"
      L
"<parm name=\"DestId\" value=\"{436EF144-B4FB-4863-A041-8F905A62C572}\" />"
      L
"<parm name=\"Proxy\" value=\"10.0.0.172:80\" />"
      L
"<parm name=\"Enable\" value=\"1\" />"
      L
"<parm name=\"Type\" value=\"1\" />"
    L
"</characteristic>"
  L
"</characteristic>"
L
"</wap-provisioningdoc>";

LPWSTR pszwXMLout 
= NULL;
HRESULT hr 
= DMProcessConfigXML(strFavoriteXml, CFGFLAG_PROCESS, &pszwXMLout);

if ( pszwXMLout )
{
  delete [] pszwXMLout;
  pszwXMLout 
= NULL;
}

 


LPCTSTR szFormat =
L
"<wap-provisioningdoc>"
  L
"<characteristic type=\"CM_GPRSEntries\">"
    L
"<characteristic type=\"%s\">"
      L
"<characteristic type=\"DevSpecificCellular\">"
        L
"<parm-query name=\"GPRSInfoAccessPointName\"/>"
      L
"</characteristic>"
    L
"</characteristic>"
  L
"</characteristic>"
L
"</wap-provisioningdoc>"
//%s为 "移动梦网(GPRS)" "GPRS连接互联网" 等,
//可以用ConnMgrQueryDetailedStatus枚举,CONNMGR_CONNECTION_DETAILED_STATUS的szDescription

 


LPCTSTR szFormat = 
L
"<wap-provisioningdoc>"
  L
"<characteristic type="UnInstall">"
    L
"<characteristic type="[AppName]">"
      L
"<parm name="uninstall" value="1"/>"
    L
"</characteristic>"
  L
"</characteristic>"
L
"</wap-provisioningdoc>"
//[AppName] = 注册表中对应的该软件的名称 一般是:生成cab包使用的inf中的provider和appname的组合
//如:provider = aaa appname = bbb <characteristic type="aaa bbb"> 然后用DMProcessConfigXML来处理

 

关闭硬件按钮声音

 

创建一封新的email

 

创建Wi-Fi连接

 

枚举Wi-Fi连接点

 

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。