装access2000的驱动或安装office2000
解决方案 »
- 请问二级菜单选项能禁用么?
- attach出现错误
- 为什么总是说 Unhandled exception in ChatRoomClient.exe 0xC0000005 Access Violation
- 请问一个单文档多视图的问题(不折分窗口)
- 请问安装程序如何做???
- 十万火急:一个算法问题(最好给出代码),答出着给100分!
- 如何保存整个 ctreeview 的信息
- 公司让我开发新模块,我应该选用哪种组件模型?希望大家多多帮忙!
- 请问如何在一个Button上显示一个16位的位图????一定给分
- 我用MFC做了一个基于对话框的应用程序,只能在我的机器上运行
- 编译不过去!!!!!
- 我要怎样VC编程得到计算机的所有盘符,并能得知每个盘中有哪些文件?
2
PRB: Unrecognized Database Format Error with Access 2000 Database
ID: Q236991
--------------------------------------------------------------------------------
The information in this article applies to:Microsoft Visual C++, 32-bit Editions, version 6.0--------------------------------------------------------------------------------
SYMPTOMS
When opening a database created with Access 2000 through MFC DAO classes in Visual C++, you get the following error message: Unrecognized database format.
You also get this message when trying to create a new MFC DAO database SDI or MDI project using MFC AppWizard. CAUSE
This error message occurs because the MFC DAO classes that ship with Visual C++ 6.0 load DAO 3.5 (Dao350.dll) by default. DAO 3.5 uses Jet 3.5, which can only open Jet 3.5 format (or earlier) databases. Access 2000 creates Jet 4.0 format database files, which are unrecognizable to Jet 3.5. To successfully open an Access 2000 database using the MFC DAO classes, you need to use DAO 3.6 (Dao360.dll). DAO 3.6 uses Jet 4.0, which can open any available Access database format. RESOLUTION
Currently, there is no workaround to using AppWizard with Access 2000 data sources.For your application to use version 3.6 of DAO, you must update the version of MFC at run time to MFC version 6.01. To do this depends on whether you are building the application to use the MFC DLL or to build with the static libraries for MFC. If you are linking with the MFC DLL, you can specify that you want MFC to use DAO 3.6 by inserting the following line of code before you open an Access 2000 database: AfxGetModuleState()->m_dwVersion = 0x0601;
Insert this line in the CYourApp::Initinstance() function of your program. If you are building with the static MFC libraries, following are the steps to get static builds of MFC to use DAO 3.6:
Modify the Daocore.cpp file in the MFC SRC directory. You will receive the following comment:
// Determine whether to use DAO 3.6, 3.5, or 3.0
// Use DAO 3.0 if DLL build and not built with MFC 4.21 or later
// Use DAO 3.6 if MFC 6.01 or later
// otherwise, DAO 3.5
Add the following lines:
#undef _MFC_VER
#define _MFC_VER 0x0601 Rebuild the library for the variant you need. For example, to build the static MFC library, debug version, non-Unicode, with no browser files use the following command at the command prompt in the MFC\SRC folder: nmake DEBUG=1for release:
nmake DEBUG=0for unicode builds:
nmake DEBUG=1 UNICODE=1
nmake DEBUG=0 UNICODE=1 NOTE: You need to make certain that the compiler tools are in your path. If not, you may need to run the Vcvars32.bat file located in the Visual C++ \BIN folder. Also note that when you build these new versions of the libraries, they will be copied over the top of the existing ones in the MFC\LIB folder so you may want to save the old ones first. STATUS
This behavior is by design. Additional query words: Keywords : kbVC600 kbDSupport
Version : winnt:6.0
Platform : winnt
Issue type : kbprb
Technology : kbvc
Last Reviewed: February 4, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.
--------------------------------------------------------------------------------
Send feedback to MSDN.Look here for MSDN Online resources.
_ConnectionPtr m_pConnDBSys; m_pConnDB.CreateInstance(_uuidof(Connection));
m_pConnDB->ConnectionTimeout = 5;
m_pConnDB->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=..\\Bin\\sysconfig.mdb","","",adModeUnknown);///