代码如下
CString strSql = "pro_send";
    try
    {
         _CommandPtr pCommand;
         _RecordsetPtr pRecordset; _ParameterPtr pPara01;
_ParameterPtr pPara02;
_ParameterPtr pPara03; _variant_t var01((char*)UserNumber);
_variant_t var02((char*)Message);
_variant_t var03((long)ServiceCode); _variant_t varResult; HRESULT hr;
hr = pCommand.CreateInstance("ADODB.Command");
if (SUCCEEDED(hr))
{
pCommand->CommandText = (LPCSTR)strSql;
pCommand->CommandType = adCmdStoredProc; pPara01 = pCommand->CreateParameter("v_UserNumber", adVarChar, adParamInput, sizeof(UserNumber), var01);
pCommand->Parameters->Append(pPara01);
pPara01->Value = var01; pPara02 = pCommand->CreateParameter("v_Message", adVarChar, adParamInput, sizeof(Message), var02);
pCommand->Parameters->Append(pPara02);
pPara02->Value = var02; pPara03 = pCommand->CreateParameter("v_ServiceCode", adInteger, adParamInput, sizeof(int), var03);
pCommand->Parameters->Append(pPara03);
pPara03->Value = var03; pCommand->ActiveConnection = m_DataBase.m_pConnection;
pRecordset = pCommand->Execute(NULL,NULL,adCmdStoredProc); //遍历所有从数据库读出的记录
while (!pRecordset->adoEOF)
                  {
                       //处理结果集
                  }
          }
       }
       catch(_com_error e)
       {
        }在开始打开pCommand时以及Execute时都正常,没有报错。但一到while(!pRecordset->adoEOF)时就跳到catch里。可是明明数据库是有记录的。捕捉错误,显示信息:对象关闭时,不允许操作。
请各位指点,哪里错了