我想,你的程序并不是需要VC环境,而是需要一个ODBC的环境,你可以在你的机器上安装一个ODBC版本,特别是ACCESS引擎,如果没有ODBC版本安装,我可以给你一个。 还有可能是在你的VC程序初始化时没有对OLE进行初始化。比如: BOOL AFXAPI AfxOleInit( ); #include <afxdisp.h> Return Value Nonzero if successful; 0 if initialization fails, possibly because incorrect versions of the OLE system DLLs are installed. Res Initializes the OLE DLLs.
还有可能是在你的VC程序初始化时没有对OLE进行初始化。比如:
BOOL AFXAPI AfxOleInit( );
#include <afxdisp.h>
Return Value
Nonzero if successful; 0 if initialization fails, possibly because incorrect versions of the OLE system DLLs are installed.
Res
Initializes the OLE DLLs.
有一次我就是在完成了程序才发现这个问题,虽然最后我将DAO的DLL文件及其注册表中的信息提取出来做在安装程序中,但我不可能每次都这样做,而且仅仅是DAO中的DLL文件,就有3M之多。
现在,我还是使用ODBC算啦,因为WIN98 SE以上的计算机都会有ODBC,而且包含了ACCESS驱动引擎。
来做安装盘来支持(用Install Shield 6.0 以上版可以在组件中点击右键Insert InstallShield object...)。