Message 1 of 5
arx+ado+acad2004 crash
Not applicable
02-29-2008
06:57 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
I use VS2002 objectArx Acad2004 build arx.
when use ado open,Acad2004 or Acad2006 all crash.
the code:
//stdafx.h
#pragma warning(disable:4146)
#import "C:\Program Files\Common Files\System\ado\msado15.dll" rename_namespace("ARXADO") rename("EOF","adoEOF"),rename("BOF","adoBOF"),rename("EOS","AdoEOS")
using namespace ARXADO;
#pragma warning(default:4146)
//myfuntion ado open and acad2004 crash
if(FAILED(::CoInitialize(NULL)))
{
AfxMessageBox("CoInitialize失败!");
return;
}
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
m_pConnection.CreateInstance(__uuidof(Connection));
m_pRecordset.CreateInstance(__uuidof(Recordset));
CString m_strConnection;
try
{
m_strConnection.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s",strMDBFileName);
m_pConnection->Open((_bstr_t)m_strConnection,"","",adModeUnknown);//ACAD crash
}
catch(_com_error &e)
{
strError.Format("connection open error:%s",e.ErrorMessage());
return;
}
someone can tell me why?
when use ado open,Acad2004 or Acad2006 all crash.
the code:
//stdafx.h
#pragma warning(disable:4146)
#import "C:\Program Files\Common Files\System\ado\msado15.dll" rename_namespace("ARXADO") rename("EOF","adoEOF"),rename("BOF","adoBOF"),rename("EOS","AdoEOS")
using namespace ARXADO;
#pragma warning(default:4146)
//myfuntion ado open and acad2004 crash
if(FAILED(::CoInitialize(NULL)))
{
AfxMessageBox("CoInitialize失败!");
return;
}
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
m_pConnection.CreateInstance(__uuidof(Connection));
m_pRecordset.CreateInstance(__uuidof(Recordset));
CString m_strConnection;
try
{
m_strConnection.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s",strMDBFileName);
m_pConnection->Open((_bstr_t)m_strConnection,"","",adModeUnknown);//ACAD crash
}
catch(_com_error &e)
{
strError.Format("connection open error:%s",e.ErrorMessage());
return;
}
someone can tell me why?