最近在开发一款pda程序,把遇到的问题总结一下。
PDA开发总结
一、首先是配置开发环境
1. 安装步骤:
ü 安装ActiveSync,微软嵌入式开发同步软件。在模拟器上调试,不需要这个软件。
ü 安装EVC4,开发环境。
ü 安装EVC4SP4,EVC4补丁。
ü 安装STANDARD_SDK.msi,SDK模拟器。
ü 安装CHSEmulator_SDK.msi,SDK中文模拟器
2. 建立工程:
ü 建立一个工程:选择 WCE MFC AppWizard[exe],如果安装了 Microsoft Pocket PC 2003 SDK.msi,会出现红框内的选项。
ü 在CPUs:此处勾选需要的cpu。ARMV4 + WCE emulator + WCE x86。
ü 建立工程之后,在对话框 properaties内。
3. 运行:
F7:bulid 。F5:debug时,可以调试。
4. 共享pc机中的东西。
之后你可以在 我的设备àstorage card中找到。
5. 如果用到数据库。我用的access数据库
ü 注册及使用adoce31。
1.将Adoce PPC_ARM文件夹中"需要使用的DLL"中的文件复制到设备的Windows文件夹下;
2.数据库程序中在使用VOADO之前注册这些DLL。可以使用自带的dllregeister.exe注册。
也可以:(这种方法我没试,bu)
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\adoce31.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\Adoxce31.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\Adocedb31.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\Adoceoledb31.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\Msdaer.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\Msdaeren.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\msdadc.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
CreateProcess(_T("\RegSvrCe"),_T("/s \Windows\\msdaosp.dll"),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
3.将VoAdo中所有文件添加到你的工程中,将其中adoce30.h都改为adoce31.h;
4.将vorecordset.h文件中此处改为
BOOL CVORecordset::g_Init = FALSE;
CLSID CVORecordset::g_ClsID;
TCHAR* CVORecordset::g_ProgID = TEXT("ADOCE.Recordset.3.1");
原来第3句为TCHAR* CVORecordset::g_ProgID = TEXT("ADOCE.Recordset.3.0");
5.将Include文件夹中的adoce31.h和adocec31.h添加到你的工程中;
6.将regsvrce.exe复制到设备中和你的数据库程序同一个文件夹下(该文件在Program Files\Microsoft eMbedded C++ 4.0\EVC\WCE400\TARGET\ARMV4文件夹下)。
ü 注意:不同类型的cpu需要的dll和dllregeister.exe不一样。具体说应该是版本不样。
Dll:在微软网站,下载adocepbzip.exe。安装之后,在
\adocepbzip\adocepb\setup\Data Access 3.1\Program Files\DataAccess31\DEVICE中找到对应cpu的dll。
Register.exe:在微软网站,下载SQLServe2000CE.exe。安装之后,在\Microsoft SQL Server CE 2.0\Device\目录下找到对应cpu类型的dllregister.exe和几个dll。
将这些dll(包含上图中四个dll)和dllregister.exe 拷贝到设备的windows目录下,运行dllregister.exe。即可。
6. 若程序需要使用到其他的dll。即,不能使用static Library,必须使用shared dll时。需要拷贝几个dll到设备中。同5一样,不同的cpu需要不同版本的dll。
可以在Windows CE Tools\wce500\CHSEmulator\Mfc\Lib\x86目录下找到这些dll
不清楚,需要那个,都拷过去了。
需要注意的是,使用不同的环境编译程序时,即使用StandardSDK,,或CHSEmulator。6中的目录要跟着变化。
7. 如此,万事具备,只欠东风。
本文来自CSDN博客,转载请标明出处: