CString m_dbName="TESTDB";
CString dataFiles="d:\\my_data.mdf";AfxOleInit();
SQLDMO::_SQLServer2Ptr spSQLServer;
spSQLServer.CreateInstance(__uuidof(SQLDMO::SQLServer2)));
spSQLServer->AttachDB(_bstr_t(m_dbName),_bstr_t(dataFiles));
执行上面这句 就出错提示:
“0x10217c5f”指令引用的0x00000000内存。该内存不能为read
然后应用程序关闭了。但是在企业管理器查看,数据库也正确附加上去了的,请问是什么原因呢?
要用Raw_attachDb这个方法,自己控制第三个参数。
_bstr_t(const wchar_t* s) throw(_com_error);
有这2个构造函数,
spSQLServer->AttachDB(_bstr_t(m_dbName),_bstr_t(dataFiles));
应该没什么问题吧?