[C++]文本转Recordset

来源:互联网 发布:python 自定义迭代器 编辑:程序博客网 时间:2024/06/06 14:04

 HRESULT hr = S_OK;

 if(IsOpen())
  Close();

 try
 {
  ADODB::_StreamPtr s;
  s.CreateInstance(__uuidof(ADODB::Stream));

  _variant_t vtType;
  vtType.vt=VT_ERROR;
  vtType.scode=DISP_E_PARAMNOTFOUND ;

  _bstr_t bstrUserID,bstrPwd;

  s->Open(vtType,
   ADODB::ConnectModeEnum::adModeUnknown,
   ADODB::StreamOpenOptionsEnum::adOpenStreamUnspecified,
   bstrUserID,bstrPwd);

  s->Type=ADODB::StreamTypeEnum::adTypeText;

  s->WriteText(_bstr_t(lpstrXMLString),ADODB::StreamWriteEnum::adWriteChar);
  s->Position=0;

  hr = m_pRecordset->Open(_variant_t((IDispatch*)s, TRUE), vtType, ADODB::adOpenForwardOnly, ADODB::adLockOptimistic, ADODB::adCmdFile);
  
  s->Close();
//  s->Release();
  s=NULL;
  return hr == S_OK;
 }
 catch(_com_error &e)
 {
  dump_com_error(e);
  return FALSE;
 }

原创粉丝点击