<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      怎么在VC++ 編寫的組件中使用 ADO

      [摘要]如何在VC++ 編寫的組件中使用 ADO簡介這篇文章是給那些習慣于用VB開發組件的人想轉用VC++時看的。本文用一個簡單的例子示范如何使用ADO Recordset 對象。在VB中,當你想要返回一個...
      如何在VC++ 編寫的組件中使用 ADO

      簡介
      這篇文章是給那些習慣于用VB開發組件的人想轉用VC++時看的。本文用一個簡單的例子示范如何使用ADO Recordset 對象。
      在VB中,當你想要返回一個ADO Recordset,你會這樣寫…
      Function GetRecordset() As Object
           Dim cn As ADODB.Connection
           Dim rs As ADODB.Recordset
           Set cn = New ADODB.Connection
           cn.Open "DSN=AdvWorks"
           Set rs = cn.Execute("Select * From Customers")
           Set GetRecordset = rs
      End Function  

      那么讓我們來看看用VC++如何實現呢?
      在VB中,你會使用’Project->References菜單來使用其它COM組件,例如ADO。在VC++中,要使用#import聲明。在你的.CPP或.H文件中插入這樣一句。
      #import "c:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename ( "EOF", "adoEOF" )

      然后加一個方法。右擊ClassView ,選擇 Add Method。
      Method Name: GetRecordset
      Parameters: [out, retval] IDispatch **RS]
      現在是關鍵…
      STDMETHODIMP CADOSample::GetRecordset(IDispatch **RS)
      {
           _ConnectionPtr pCN;
           _RecordsetPtr pRS;
           _variant_t vtEmpty;
           pCN.CreateInstance(__uuidof(Connection));
           pCN->Open("DSN=AdvWorks", "", "", -1);
           pRS = pCN->Execute("Select * From Customers",
                 &vtEmpty, adCmdUnknown);
           pRS->QueryInterface(IID_IDispatch,
                 (void**) RS);
           return S_OK;
      }

      看看,VC++程序幾乎與VB一模一樣,誰說VC++難用?



      日韩精品一区二区三区高清