WEB开发网
开发学院手机开发Windows Mobile 开发 简化 Windows Mobile 代码维护的编程技巧 阅读

简化 Windows Mobile 代码维护的编程技巧

 2010-03-14 22:12:00 来源:WEB开发网   
核心提示:iDeviceType= SMARTPHONEV2; // is a smartphone:// Smartphone creates an access denied error on// SystemParametersInfo()}}}return iDeviceType;}在 Smartphone 上调用“Sy

iDeviceType= SMARTPHONEV2; // is a smartphone:

// Smartphone creates an access denied error on

// SystemParametersInfo()

}

}

}

return iDeviceType;

}

在 Smartphone 上调用“SystemParametersInfo()”时,如果Smartphone 锁定和应用程序签署的证书,可能会引起“Access Denied”而失败 。因为只有Smartphone 才会引起 Access Denied 失败,所以您也可以用它作为 Smartphone 的标记。

二、在程序中确定“My Document”和存储卡的位置

发现存储卡:

void ShowFlashCard()

{

BOOL bContinue = TRUE;

HANDLE hFlashCard;

WIN32_FIND_DATA lpwfdFlashCard;

hFlashCard = FindFirstFlashCard (&lpwfdFlashCard);

if (hFlashCard == INVALID_HANDLE_VALUE)

return;

while (bContinue)

{

MessageBox(NULL,lpwfdFlashCard.cFileName,

TEXT("FindFlash"),MB_OK);

bContinue = FindNextFlashCard (hFlashCard,

&lpwfdFlashCard);

}

FindClose (hFlashCard); // Close the search handle.

}

发现“My Documents”:

不同语言版本的Windows Mobile的路径名是不同的,如:

英文版是“My Documents”

简体中文版是“我的文档”

德文版是“Meine Dokumente”

应该使用以下的调用来获取指向My Documents的正确路径。

SHGetSpecialFolderPath(NULL,szTxt,CSIDL_PERSONAL,0);

CSIDL_PERSONAL 请求“My Documents”文件夹以 szTxt (TCHAR) 形式返回。

三、为每个平台使用不同的资源定义

如果您想让相同的二进制文件既可用于 Pocket PC,又可用于 Smartphone,您必须创建两种资源定义,一个平台一种。如果您只想使源代码保持同步,您可以使用资源的“condition”属性来包含正确的资源。

假如您想让二进制文件具有兼容性,您需要在代码中加载 Pocket PC 或 Smartphone 资源:

switch (iDeviceType) // Determined with tip -1- above

Tags:简化 Windows Mobile

编辑录入:coldstar [复制链接] [打 印]
赞助商链接