MFC使用ado连接数据库的线程不退出.
今天发现连接数据库的时候多了3个线程,但是这3个线程不退出.
我在一个"对话框1"里生成一个新的"对话框2", 然后在"对话框2"连接数据库, 但是关闭数据库连接,对话框2退出之后, Pview工具显示那3个线程还是存在.
我对底层不大明白,谁能帮我解答一下.
代码如下:
void CTest2::OnOK()
{
//CDialog::OnOK();
::CoInitialize(NULL);
CString strSRC;
strSRC= "Driver=SQL Server;Server=pk66;Database=WANPark;UID=sa;PWD=""";
_bstr_t bstrSRC(strSRC);
HRESULT hr;
try
{
hr=m_pConnection.CreateInstance("ADODB.Connection");
if(SUCCEEDED(hr))
{
m_pConnection->Open(bstrSRC,"","",adConnectUnspecified);
AfxMessageBox("连接数据库成功!");
}
}
catch(_com_error e)
{
//AfxMessageBox(e.ErrorMessage());
AfxMessageBox("连接数据库失败!");
return;
}
}
void CTest2::OnEnd()
{
// TODO: Add your control notification handler code here
if(m_pConnection != NULL)
{
m_pConnection->Close();
m_pConnection.Release();
::CoUninitialize();
}
}