下面是编写的ADOConn类(sql2000+vc6.0),总是出现运行错误,麻烦看一下那里出了问题!!!!感激不尽!

麻烦看一下那里出了问题,似乎是ADOConn::GetRecordset(_bstr_t bstrSQL)
出了问题
ADOConn::ADOConn()
{

}

ADOConn::~ADOConn()
{

}

void ADOConn::OnInitDBConn()
{
::CoInitialize(NULL);
try
{
m_pConnection.CreateInstance("ADODB.Recordset");
// _bstr_t strConnect="Provider=SQLOLEDB;Server=XP-201102242155;Database=HrSys;uid=sa;pwd=sa;";
// m_pConnection->Open(strConnect,"","",adModeUnknown);
m_pConnection->ConnectionString="Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=UserMan";
m_pConnection->Open("","","",adConnectUnspecified);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
}

_RecordsetPtr& ADOConn::GetRecordset(_bstr_t bstrSQL)
{
try
{
if(m_pConnection==NULL)
OnInitDBConn();
m_pRecordset.CreateInstance(__uuidof(Recordset));
m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
return m_pRecordset;
}

bool ADOConn::ExecuteSQL(_bstr_t bstrSQL)
{
try
{
if(m_pConnection==NULL)
OnInitDBConn();
m_pConnection->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
return false;
}
}

void ADOConn::ExitConnect()
{
if(m_pRecordset !=NULL)
m_pRecordset->Close();
m_pConnection->Close();
::CoUninitialize();
}

我知道
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-03-04
提示什么错误啊?追问

运行后就弹出一个对话框,上面一个确定按钮,点了后就退出了

相似回答
大家正在搜