用于 ADOCE 过滤的 C++ 包装器






4.67/5 (6投票s)
一个简单的类,用于在 C++ 项目中使用 DesktopToDevice 和 DeviceToDesktop 函数。
概述
DesktopToDevice
和 DeviceToDesktop
函数允许您将 MS Access 数据库(.mdb 文件)传输和/或同步到 Windows CE 设备(.cdb 文件)。这些函数设计用于从 Visual Basic 使用,但是仍然可以通过在 dll 中定位函数从 C++ 项目调用它们。
原始代码由 Nathan Lewis (nlewis@programmer.net, http://www.ticz.com/~nlewis) 编写。我只是将函数重新组织到一个类中,以便于从 MFC 项目中使用。我使用单例模式来确保该类只实例化一次,并且 dll 只加载一次。
用法
要在您的项目中使用的类,您只需将其包含在您的项目中即可。要获取 CAdoFiltr
类的实例,您必须使用 getInstance()
函数,因为构造函数是受保护的,您不能直接使用它。有关可以传递给 DesktopToDevice
和 DeviceToDesktop
的参数的更多信息,请参阅 MSDN。
例如:
CAdoFiltr* pAdoFiltr = CAdoFiltr::getInstance(); HRESULT hr = pAdoFiltr->DesktopToDevice("c:\\database\\test.mdb", "tblTest..!tblTest2..", false, true, "\\My Documents\\test.cdb"); if (hr != S_OK) { //transfer has failed }
我在 Windows NT 4 Workstation with ActiveSync 3.5 和运行 PocketPC 2000 的 iPAQ 3650 下测试了该代码。
文档
文档文件由 doxygen 生成,它通过代码中的奇怪标签解释了注释块。
- 有关 ADOCE 以及
DesktopToDevice
和DeviceToDesktop
函数的更多信息,请参阅 MSDN。 - 有关从 C/C++ 使用这些函数的更多信息,请参阅 Nathan Lewis 的原始贡献。
- 有关单例模式的更多信息,您可以查看 Pattern Digest。