导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→[原创]编写Windows CE程序 (二)

* 4826: [原创]编写Windows CE程序 (二)

   爱吃肉 
爱吃肉发表的帖子 

 [原创]编写Windows CE程序 (二)
自Windows CE出台2年以后,微软就推出一套增加了很多额外特性的带Ex 扩展的函数,这一变化大大增强了Windows CE 数据库的功能。
程序员可以利用ADOCE 来存储数据,这一过程也采用了Pocket Access 或 SQL Server 2000 来实现。ADO 和ADOCE 通常有相同的记录连接。

建立数据库:
建立一个数据库的卷:
BOOL CeMountDBVol( PCEGUID pceguid, LPWSTR lpszDBVol, DWORD dwFlags);

如果一个打开的卷已经存在,接着就可以建立一个数据库:
CEOID CeCreateDatabaseEx(PCEGUID pceguid, CEDBASEINFO * lpCEDBInfo )


此主题相关图片如下:
按此在新窗口浏览图片
CeCreateDatabaseEx提供了以上功能。建立的数据库的卷叫\CEDB.clb。
该卷存放于文件系统中,并带有一个缺省的扩展名CLB。

打开数据库:
HANDLE CeOpenDatabaseEx( PCEGUID pceguid, PCEOID poid, LPWSTR lpszName,
                            CEPROPID propid, DWORD dwFlags,
                                 CENOTIFYREQUEST *pRequest hwndNotify );

打开数据库后,定位在数据库的开头顺序读取:
CEOID CeSeekDatabase( HANDLE hDatabase, DWORD dwSeekType,
                             DWORD dwvalue, LPDWORD lpdwIndex );

增加一条记录到数据库:
CEOID CeWriteRecordProps( HANDLE hDbase, CEOID oidRecord,
                           WORD cPropID, CEPROPVAL * rgPropVal );

数据库读取:
CEOID CeReadRecordPropsEx ( HANDLE hDbase, DWORD dwFlags,
                              LPWORD lpcPropID, CEPROPID * rgPropID,
                              LPBYTE * lplpBuffer, LPDWORD lpcbBuffer,
                              HANDLE hHeap );

关闭数据库:
BOOL CeUnmountDBVol ( PCEGUID pceguid );

清除数据库:
 从 开始 菜单,单击 程序 → 文件资源管理器 并浏览,找到想要清除的数据库文件的目录。 
 单击数据库文件,出现一个提示菜单。 
 单击 删除 按钮。 
 单击 是 按钮,确认删除此文件。 
注:如果打算删除数据库,该数据库不能在运行状态。 删除数据库之后,再删除事务日志文件。如果数据库从未启动过,则没有创建事务日志。

小结:
现在,你已经可以编写一个简单的Windows CE 数据库程序咯,快去试试看吧。


发表时间:2008年3月26日14:15:42

  
回复该帖

本主题共有 8 帖,分页:>>>>>该主题的所有内容[8]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  4881.[详细][原创]编写Windows CE程序 (二)
摘要:续上一帖,希望大家支持。......(24字)
- [爱吃肉][662次] 2008年3月26日

  12506.[详细]...
摘要:强人还真多!......(11字)
- [特工][583次] 2008年4月10日

  39364.[详细]直流电源
摘要:▲<a href="http://www.lyld.com" target=_blank>直流电源</a>=>电子技术的日益发展 ▲<a hre......(1753字)
- [shliyou][698次] 2008年4月24日

[上一篇帖子]:[原创]编写Windows CE程序 (二)续上一帖,希望大家支持。
[下一篇帖子]:[求助]ARM堆栈ARM 芯片支持4种堆栈模式(满递增,满递减,空递增,空递减),是不是说