1. 程式人生 > >vc進行office(word)程式設計之一:開啟vc與office介面程式設計的大門

vc進行office(word)程式設計之一:開啟vc與office介面程式設計的大門

第一步:將word的介面類匯入進來

如果是vc6.0

1、點View選單中的ClassWizard(或按CTRL+W)
2. 選擇Automation標籤,點Add Class並選擇"From a type library" 瀏覽並選擇你希望自動化的物件庫(例如,如果你自動化word2003, 則選擇MSWord物件庫,預設位於 C:/Program Files/Microsoft Office/Office11/MSWORD.olb).

MSWord類嚮導後的效果圖

如果是vc.net

1、點Project選單中的Add Class

2.在Add Class對話方塊中,選擇"From a type library"(型別庫中的確MFC類),開啟後出現從型別庫新增類嚮導對話方塊,然後從以下來源新增類選擇“檔案”,在位置中新增C:/Program Files/Microsoft Office/Office11/MSWORD.olb).

3.根據需要相應的介面,將自動生成所需要的介面類

MSWord類嚮導後的效果圖

這樣就把相應的word介面類匯入到wc環境中了。

第二步:如何初始化所載入的COM

所載入的COM介面,在沒有進行初始化程式時,將無法正確執行,因此需要在程式的入口對COM進行初始化,如:

 在 CAutoProjectApp::InitInstance() 函式中新增如下程式碼,用於載入COM支援庫:BOOL CAutoProjectApp::InitInstance()
{
      if(!AfxOleInit())  // Your addition starts here
      {
            AfxMessageBox("Could not initialize COM dll");
            return FALSE;
      }     // End of your addition

      AfxEnableControlContainer();
      .
      .
      .

}
 

這樣程式就可以正常使用了。接下來怎樣操作,請看下回分解...

附錄:

下表包含了Microsoft Office應用程式型別庫的名稱。

   應用程式(Application)              型別庫(Type Library)
   --------------------------------------------------------

   Microsoft Access 97                   Msacc8.olb
   Microsoft Jet Database 3.5            DAO350.dll
   Microsoft Binder 97                   Msbdr8.olb
   Microsoft Excel 97                    Excel8.olb
   Microsoft Graph 97                    Graph8.olb
   Microsoft Office 97                   Mso97.dll
   Microsoft Outlook 97                  Msoutl97.olb
   Microsoft PowerPoint 97               Msppt8.olb

   Microsoft Word 97                     Msword8.olb
   Microsoft Access 2000                 Msacc9.olb
   Microsoft Jet Database 3.51           DAO360.dll
   Microsoft Binder 2000                 Msbdr9.olb
   Microsoft Excel 2000                  Excel9.olb
   Microsoft Graph 2000                  Graph9.olb
   Microsoft Office 2000                 Mso9.dll
   Microsoft Outlook 2000                Msoutl9.olb
   Microsoft PowerPoint 2000             Msppt9.olb
   Microsoft Word 2000                   Msword9.olb

   Microsoft Access 2002                 Msacc.olb
   Microsoft Excel 2002                  Excel.exe
   Microsoft Graph 2002                  Graph.exe
   Microsoft Office 2002                 MSO.dll
   Microsoft Outlook 2002                MSOutl.olb
   Microsoft PowerPoint 2002             MSPpt.olb
   Microsoft Word 2002                   MSWord.olb

   Microsoft Office Access 2003          Msacc.olb
   Microsoft Office Excel 2003           Excel.exe
   Microsoft Graph 2003                  Graph.exe
   Microsoft Office 2003                 MSO.dll
   Microsoft Office Outlook 2003         MSOutl.olb
   Microsoft Office PowerPoint 2003      MSPpt.olb
   Microsoft Office Word 2003            MSWord.olb
提示:除了 Dao350.dll 、Dao360.dll和 Microsoft Office 10(MSO.dll),型別庫預設位於: C:/Program Files/Microsoft Office/Office (Office 2002 路徑是 C:/.../Office10,Office 2003 路徑是 C:/.../Office11), Dao350.dll/Dao360.dll 預設位於 C:/Program Files/Common Files/Microsoft Shared/Dao。 Office 2002 的MSO.dll 預設 C:/Program Files/Common Files/Microsoft Shared/Office10, Office 2003 的MSO.dll位於 C:/Program Files/Common Files/Microsoft Shared/Office11