ADO连接ACCESS换个操作系统运行报错有关问题

ADO连接ACCESS换个操作系统运行报错问题
大家好,我最近用VC6.0做了一个小程序碰到一个让人很郁闷的事情!我原先以为程序功能全部实现了,程序就可以提交了。但是我在做兼容性测试的时候发现:
1.我的系统(windows 7 32位)运行没有问题,以为在所有这个平台上运行都没有问题,但是经朋友测试不是所有win 7 32位的系统都能运行成功。
2.XP运行就报错,通过调试发现运行到_RecordsetPtr pRS("ADODB.Recordset"); 这句就崩溃了。
3.windows 7 64位的系统经我朋友和与我反复验证,发现其干脆就没有反应。我想很可能是其不支持VC6.0的原因吧!

以下是我连接数据库的代码
C/C++ code

         CoInitialize(NULL);
    _ConnectionPtr pConn("ADODB.Connection");
    _RecordsetPtr pRS("ADODB.Recordset");   //XP过不了这句
    temp="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+m_datapath+"\\data\\database.mdb";
    pConn->ConnectionString=(_bstr_t)temp;
    pConn->Open("","","",-1);
    temp="....";
    pRS=pConn->Execute((_bstr_t)temp,NULL,adCmdText);
         .....
    pRS->Close();
    pConn->Close();
    pRS.Release();
    pConn.Release();
    CoUninitialize();


备注:temp为CString类型,可能有人会要我try..catch我试过了!直接跪了!而且通过反复确认路径没有问题

还有就是我在stdafx.h文件添加的一条代码为:
C/C++ code

         #import "control\msado15.dll" no_namespace rename("EOF","rsEOF")


备注:msado15.dll版本为6.1.7601.17514

报的错都是:abnormal program termination

麻烦大家帮我看下,先谢谢了


------解决方案--------------------
WIN7的ADO版本GUID变了,需要在XP上编译,在WIN7上就会高版本兼容低版本可以运行了。
------解决方案--------------------
这的确可以解决大部分系统的问题,但是太死了!万一那个人的系统分区不是C盘那么。。。

这种情况不用考虑


如果真想解决,就不用import ... ado.dll
换其他的