CString strcomname;
CString strstatus;
_variant_t vNull;
_variant_t hr;
vNull.vt = VT_ERROR;
vNull.scode = DISP_E_PARAMNOTFOUND;
_bstr_t bstrProc =( L"sp_who2 " );
m_com.CreateInstance( __uuidof( Command ) ); // 创建命令对象
m_com->ActiveConnection = m_con; // 指明当前连接对象
m_com->CommandText = _bstr_t( bstrProc ); // 命令文本
m_com->CommandType = adCmdStoredProc; // 命令类型
m_set=m_com->Execute( &vNull,&vNull,adCmdUnknown );
int i=0;
while(!m_set->adoEOF)
{
hr=m_set->GetCollect("hostname");
if (hr.vt!=VT_NULL)
{
strcomname=(char*)(_bstr_t)hr;
strcomname.TrimRight();
m_display.InsertItem(i,strcomname);
}
hr=m_set->GetCollect("status");
if (hr.vt!=VT_NULL)
{
strstatus=(char*)(_bstr_t)hr;
strstatus.TrimRight();
m_display.SetItemText(i,1,strstatus);
}
hr=m_set->GetCollect("dbname");
if (hr.vt!=VT_NULL)
m_display.SetItemText(i,2,(char*)(_bstr_t)hr);
hr=m_set->GetCollect("LastBatch");
if (hr.vt!=VT_NULL)
m_display.SetItemText(i,3,(char*)(_bstr_t)hr);
m_set->MoveNext();
i++;
}
出错的地方在m_com->ActiveConnection = m_con,但不知道为什么
CString strstatus;
_variant_t vNull;
_variant_t hr;
vNull.vt = VT_ERROR;
vNull.scode = DISP_E_PARAMNOTFOUND;
_bstr_t bstrProc =( L"sp_who2 " );
m_com.CreateInstance( __uuidof( Command ) ); // 创建命令对象
m_com->ActiveConnection = m_con; // 指明当前连接对象
m_com->CommandText = _bstr_t( bstrProc ); // 命令文本
m_com->CommandType = adCmdStoredProc; // 命令类型
m_set=m_com->Execute( &vNull,&vNull,adCmdUnknown );
int i=0;
while(!m_set->adoEOF)
{
hr=m_set->GetCollect("hostname");
if (hr.vt!=VT_NULL)
{
strcomname=(char*)(_bstr_t)hr;
strcomname.TrimRight();
m_display.InsertItem(i,strcomname);
}
hr=m_set->GetCollect("status");
if (hr.vt!=VT_NULL)
{
strstatus=(char*)(_bstr_t)hr;
strstatus.TrimRight();
m_display.SetItemText(i,1,strstatus);
}
hr=m_set->GetCollect("dbname");
if (hr.vt!=VT_NULL)
m_display.SetItemText(i,2,(char*)(_bstr_t)hr);
hr=m_set->GetCollect("LastBatch");
if (hr.vt!=VT_NULL)
m_display.SetItemText(i,3,(char*)(_bstr_t)hr);
m_set->MoveNext();
i++;
}
出错的地方在m_com->ActiveConnection = m_con,但不知道为什么
解决方案 »
- 怎么动态传值?
- 求雷达显示器仿真中使用固定扇形区域填充色模拟扫描的程序
- vc中怎样添加,提取Access数据库中的Ole对象格式的字段?
- CBitmap 和BITMAP的区别和联系
- 键盘上的那个一按下就弹出开始菜单的那个按钮
- 不知用opengl前要设置些什么?
- LINK : fatal error LNK1168: cannot open Debug/Scrollbar.exe for writing
- ChildWindowFromPoint与WindowFromPoint的区别
- 定时器把窗口放大//窗口上的控件重绘,窗口闪烁咋整?
- 有那位朋友对全文检索熟悉,请教一下全文检索是怎实现的?
- 列表框中的ItemData值?
- 麻烦过来人给小弟推荐基本windows网络程序设计的好书。
m_con->Open("driver={SQL Server};Server="c2",DATABASE=master;UID=sa";,"","",adModeUnknown);
_ConnectionPtr m_con;
HRESULT hr = m_con->Open("Provider=SQLOLEDB; Server=127.0.0.1; DATABASE=master; UID=sa; PWD=xxxx; ");
if ( FAILED(hr) )
{
// print error message and return;
}