我是VC7 在代码里有这么一段try
{
m_pConnection.CreateInstance("ADODB.Recordset");
_bstr_t strConnect= "Provider=SQLOLEDB;Server=WILBUR;Database=MyData;uid=wilbur;pwd=123;";
m_pConnection->Open(strConnect,"","",adModeUnknown);}而且把ADO Data控件属性里的
username :wilbur password :123然后运行连接后就弹出来个什么提示消息都没有的警告框怎么办?
{
m_pConnection.CreateInstance("ADODB.Recordset");
_bstr_t strConnect= "Provider=SQLOLEDB;Server=WILBUR;Database=MyData;uid=wilbur;pwd=123;";
m_pConnection->Open(strConnect,"","",adModeUnknown);}而且把ADO Data控件属性里的
username :wilbur password :123然后运行连接后就弹出来个什么提示消息都没有的警告框怎么办?
什么内容也没有的警告框应该是在catch(){}中弹出的。
{
m_pConnection.CreateInstance("ADODB.Connection");
_bstr_t strConnect= "Provider=SQLOLEDB;Server=WILBUR;Database=MyData;uid=wilbur;pwd=123;";
m_pConnection->Open(strConnect,"","",adModeUnknown);}
catch(_com_error e)
{AfxMessageBox(e.Description()); }
//-------COM初始化-------------//
AfxOleInit();
我在InitInstance 里加的是 AfxEnableControlContainer(NULL);然后点一个按扭后就运行上面那些代码 就弹出那个什么提示都没有的警告框了
AfxEnableControlContainer(NULL);改成AfxOleInit();的话在cmdtarg.cpp里出现assert错误CCmdTarget::~CCmdTarget()
{
#ifndef _AFX_NO_OLE_SUPPORT
if (m_xDispatch.m_vtbl != 0)
((COleDispatchImpl*)&m_xDispatch)->Disconnect();
ASSERT(m_dwRef <= 1); //在这里出错了
#endif
#ifdef _AFXDLL
m_pModuleState = NULL;
#endif
}
_RecordsetPtr pPtr;
if (FAILED(pPtr.CreateInstance("ADODB.Recordset")))
{
AfxMessageBox("Create Instance failed!");
return FALSE;
}CString strSRC;
strSRC="Driver=SQL Server;Server=";
strSRC+="210.46.141.145";
strSRC+=";Database=";
strSRC+="mydb";
strSRC+=";UID=sa;PWD=";
strSRC+="sa";CString strSQL = "select id,name,gender,address from personal";_variant_t varSRC(strSRC);
_variant_t varSQL(strSQL);if(FAILED(pPtr->Open(varSQL,varSRC,adOpenStatic,adLockOptimistic,adCmdText)))
{
AfxMessageBox("Open table failed!");
pPtr.Release();
return FALSE;
}