文章編號: 167523 - 上次校閱: 2004年7月1日 - 版次: 2.1

如何使用 Visual C++ 5.0 應用程式轉散發 DAO

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊

結論

有 2 種與您的 Visual C++ 5.0 應用程式轉散發 DAO 3.5 的方法:

  • 您可以轉散發 DAO 安裝程式位於 [VC\REDIST\DAO 目錄。

    -或者-
  • 您可以依照 Daosetup.rtf 與 DAO SDK 安裝中。
注意 DAO SDK 的 < 安裝 DAO 上另一台電腦 」 主題的資訊不正確和資訊應該予以忽略。

其他相關資訊

轉散發 DAO 安裝程式

在 Visual C++ 5.0 CD 的下 \DEVSTUDIO\VC\REDIST\DAO\DISK1\,沒有可轉散發的 DAO 安裝程式。此安裝程式會提示使用者輸入要安裝哪些元件的相關資訊。您可以執行安裝程式有一個 '-s ' 以無訊息模式執行 [DAO] 設定不會將資訊放在螢幕上的選項。

以下是幾個重要注意事項:

  • 如果您在使用-s 選項執行程式的 DAO 元件所有會安裝 (DAO 核心元件、 ODBC 直接和 ISAMs)。
  • 如果選取 ODBCDirect 或您選擇了 '-s ' 選項,您必須擁有系統上目前安裝的 ODBC 3.0。
  • 若要登錄 DAO 和使用 DAO,您必須具備一定版本 2.20.4049 (含) 以後版本以及 Stdole2.tlb 安裝到您的系統目錄。如果您嘗試執行安裝程式與"-s 」 選項,您不具有版本 2.20.4049,或是稍後,安裝程式失敗。 若要設法這些檔案的較新版本請參閱下列的 「 Microsoft 知識庫 」 中文件:
    180071? (http://support.microsoft.com/kb/180071/EN-US/ ) FILE: Msvbvm50.exe 安裝 Visual Basic 5.0 執行階段檔案

使用您自己的安裝程式來安裝 DAO 元件

下面是從 Daosetup.rtf 檔案安裝到 DAO SDK 目錄資訊。

注意: 的文件會說您必須將一定和 Stdole2.tlb 檔案複製從 Visual C++ 5.0 CD 上 \devstudio\vc\redist 目錄到 Windows 系統目錄失敗。您必須註冊一定。

本文件將說明建立成功安裝 DAO 和其相關的檔案的安裝程式所需執行的步驟。建議您使用船 InstallShield Express 與 Visual C++ 5.0 與這份文件中資訊一起以建立安裝程式。

適當的安裝程式是 DAO 的非常重要的。因為 DAO 共用的元件只存在於電腦上的一個位置中所有使用 DAO 應用程式可能停止運作如果 DAO 安裝程式未做正確。

  1. 簡介

    若要散發的應用程式使用 DAO,您必須安裝 DAO 的可轉散發的部分。取決於是否您的應用程式使用 Microsoft Jet 引擎或 ODBCDirect] 工作區,您也必須安裝可轉散發部分 Microsoft Jet 資料庫引擎可轉散發的某些部份的 [遠端資料庫物件 (RDO),或是兩者。

    DAO、 Microsoft Jet 和 RDO 時需要更複雜的安裝程序比只要將檔案複製到目錄。應用程式不能在應用程式目錄中有它自己的 「 OLE 自動化 」 伺服器 (例如 DAO) [私人] 的複本。伺服器登錄的 OLE,所有使用者都使用相同的 DLL。
  2. 檔案

    DAO 和 DAO 的 ODBCDirect 每個需要一組核心檔案。Microsoft Jet 也有一個核心和可讓您存取其他資料格式的第二個選擇性集合。

    是否您的應用程式使用 ODBCDirect 或 Microsoft Jet 引擎來存取資料,決定是否應安裝 Microsoft Jet 引擎或 ODBCDirect 檔案。

    本節所述將檔案可散發給其他使用者的應用程式。您不能散佈之類.hlp 檔案或 DAO 標頭 (.h) 檔的其他檔案。

    注意: 在的 DAO 目錄和 System32 目錄會在區段中說明 3.2。

    1. DAO

      DAO 由下列的核心檔案 (這些檔案必須安裝 DAO 的函式) 所構成:
            File         Description          Installed   Registered  Directory
            -------------------------------------------------------------------
            
            DAO350.DLL    DAO version 3.5      Shared        Yes       DAO
            DAO2535.TLB   Type Library         Companion     No        DAO
                                               to DAO350.DLL
            MSJTER35.DLL  Microsoft Jet        System        No        System32
                          (and DAO) error
                          message DLL
            MSJINT35.DLL  Localized Microsoft  System        No        System32
                          Jet (and DAO) error
                          strings
            MSVCRT40.DLL  C Runtime DLL        System        No        System32
          
      								
    2. Microsoft Jet 引擎

      1. 核心 Jet 檔案
        Microsoft Jet 是由下列核心檔案所組成。 這些檔案已經足夠用來存取 3.0 版.MDB 資料庫和 ODBC 資料來源 (的已安裝的 ODBC 驅動程式搭配) 安裝之後使用 DAO。
              File         Description          Installed   Registered  Directory
              -------------------------------------------------------------------
              
              MSJET35.DLL  Microsoft Jet engine  System         Yes     System32
                           (version 3.5)
              MSRD2X35.DLL MDB files from       Companion       Yes     System32
                           Microsoft Access     to MSJET35.DLL
                           2.0, Visual Basic
                           3.0 or earlier
              MSJTER35.DLL Microsoft Jet (and   System          No      System32
                           DAO) error message
                           DLL
              MSJINT35.DLL Localized Microsoft  System          No      System32
                           Jet (and DAO) error
                           strings
              VBAJET32.DLL VBA-Microsoft Jet    System          No      System32
                           Expression service
              VBAR332.DLL  VBA Runtime          System          No      System32
            
        										
      2. 選擇性的檔案
        下列的選擇性檔案可讓您存取其他資料格式。 安裝到您需要支援的檔案格式的對應的 DLL 或如果您需要複寫支援。
              Module        Description         Installed   Registered  Directory
              -------------------------------------------------------------------
              
              MSREPL35.DLL  Microsoft Jet       System      No          System32
                            Replication
              MSXBSE35.DLL  Xbase formats       System      Yes         System32
              MSPDOX35.DLL  Paradox formats     System      Yes         System32
              MSTEXT35.DLL  Text files          System      Yes         System32
              MSEXCL35.DLL  Spreadsheet files   System      Yes         System32
              MSLTUS35.DLL  Lotus formats       System      Yes         System32
              MSEXCH35.DLL  Exchange formats    System      Yes         System32
               
        										
    3. ODBCDirect

      安裝下列檔案支援 ODBCDirect 功能。 DAO 會使用 RDO 處理它的 ODBCDirect 功能。基於這個原因您可能辨識這些檔案做為核心 RDO 檔案。
            File          Description          Installed   Registered  Directory
            -------------------------------------------------------------------
            
            MSRDO20.dll  Remote Database       Shared          Yes     System32
                         Objects 2.0
            RDOCURS.dll  Batch Client Cursor   Companion       No*     System32
                         Library               to MSRDO20.DLL
          
      								
    * Rdocurs.dll 不是 COM 伺服器 (它並不會匯出 DllRegisterServer) 讓未註冊。[Daosetup.rtf 不正確,以及 Regsrv32.exe 應該不執行 Rdocurs.dll 對抗。
  3. 安裝
    下列章節提供使用安裝程序的資訊。

    1. 檢查檔案是否已在使用中。
      安裝程序之第一個步驟是正在使用您可能會安裝任何檔案的程式是否正在執行。如果它們可能需要中止安裝,並要求使用者在安裝 DAO 之前關閉其他應用程式。
    2. 將檔案複製。
      將所有檔案列為 DAO 檔案 (除了 [Dao350.dll 和 Dao2535.tlb),及所有 Microsoft Jet 引擎的核心檔案 (及應用程式特定的選擇性檔案) 或 (視應用程式的需求) 的 ODBCDirect 檔案都複製到系統 (如 Windows NT system32) 目錄 (稱為上方圖表中 System32 目錄)。每平常的 DLL 標準您需要將複製與版本檢查以確定您的安裝較新版本的檔案不覆寫。DAO 的所有檔案都包含適當的版本資源。

      請使用下列程序複製 Dao350.dll 和 Dao2535.tlb:

      1. 對於 Windows NT (較舊版本比 4.0) DAO 檔案永遠進入 <windows>\MSAPPS\DAO。比方說 c:\winnt35\msapps\DAO。Windows 95 或 Windows NT 4.0,DAO 目錄大約是 c:\Program Files\Common Files\Microsoft Shared\DAO。如果使用者有的必須從登錄讀取位置的 Windows 95 的非英文版,而有不同確切的位置。在登錄中找到下列節點:
                    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion
               
        										
        和擷取名為 CommonFilesDir 機碼的值。
      2. 如果這個登錄機碼不存在,然後建立它,並將值設定為 [:
                    \Program Files\Common Files
               
        										
        請確定使用正確的磁碟機代號。
      3. 有的索引鍵,則通常無法值之後:
                    c:\Program Files\Common Files
               
        										
        然後附加 \Microsoft Shared\DAO 」,並使用該作為目的地位置 Dao350.dll 和 Dao2535.tlb。
      4. 將 Dao350.dll 和 Dao2535.tlb 複製到使用進行版本檢查這個目錄。這是上面圖表中參照為 DAO 目錄的目錄。
    3. 登錄 DLL。
      複製所有的 DLL 之後需要註冊它們。您如果它存在上每個 DLL 呼叫 DLLRegisterServer 進入點。因為 DAO 需要 Microsoft Jet 之前它可以順利註冊的附註複製檔案先前指定的順序是很重要的。

      安裝程式應該使用 Regsvr32.exe 或對等的呼叫來 (如果它們都已安裝步驟 3b),請執行下列 dll 內 DLLRegisterServer: Dao350.dll Msjet35.dll,Msrd2x35.dll Msexcl35.dll,Mspdox35.dll Msxbse35.dll,Msltus35.dll,Mstext35.dll Msexch35.dll,Msrdo20.dll。

      以下是您應該牢記一些特殊考量:

      • Dao350.dll 需要有 Msvcrt40.dll 和電腦上其他必要的檔案之前可以註冊。如果 DAO 失敗註冊,檢查 MSVCRT40.DLL 的版本。問題通常會看到在 Windows 95 版本應該是 4.10.6038 下 (約 319 K 檔案)。
      • Msrdo20.dll 必須有 ODBC 安裝之前它將會註冊。 使用 ODBC 安裝程式來安裝 ODBC。
      • Msexch35.dll 必須具備 MAPI 之前可以註冊您的系統上已安裝。
    4. 更新檔案的參考計數。
      因為 DAO 共用由許多程式,計數會保留方式的多次 DLL 是否已經安裝。這允許解除安裝程式沒有其他程式需要它時,只將檔案中移除。這是相同的 [Msrdo20.dll。從系統永遠不會移除其他檔案。

      1. 在下列位置下面搜尋您已安裝的檔案同名的機碼:
            HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls\ 
               
        										
      2. 如果索引鍵遞增它的值 (它是一個 dword) 的其中一種方式。 如果並不存在的索引鍵您需要建立索引鍵的型別 dword 檔案 (包括路徑) 的名稱,並設定其值為 1。典型的項目就是:
                 \\Program Files\\Common Files\\Microsoft Shared\\DAO
                    \\DAO350.DLL"=dword:00000001
               
        										
        (這個範例是 regedit 所使用的匯出格式 ; 您只會建立索引鍵時使用單一反斜線)。

        請確定您的參考計算 [Msrdo20.dll 和 [Dao350.dll 兩者。
  4. 解除安裝
    若要符合 Windows 95 方針程式必須能夠自行解除安裝及移除任何檔案和它們所建立的登錄項目。許多安裝工具套件,例如提供 InstallShield 工具組會提供這為 「 內建 」 功能。它不在本文件提供的 Windows 95 安裝需求的所有詳細資料的範圍之內但解除安裝 DAO 所需的基本步驟如下。 請注意共用的元件和他們的同一系列文件檔案將被移除。永遠不會移除已安裝的系統檔案。

    只有如果 Dao350.dll 的參考計數索引鍵的值為 1,將移除 Dao350.dll 和 Dao2535.tlb。否則計數會遞減,並將檔案保留在原處。例如:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDlls\"C:\Program Files\Common Files\Microsoft Shared\DAO\DAO350.DLL"

    之前移除 Dao350.dll,您必須呼叫其項目點 DLLUnregisterServer,讓它可以從登錄移除其項目。 您可以如此做,請使用 Regsvr32.exe 以-u 選項。

    相同的規則適用於 [Msrdo20.dll 而且很的 Rdocurs.dll 的同一系列文件檔。

這篇文章中的資訊適用於:
  • Microsoft Visual C++ 5.0 Enterprise Edition
  • Microsoft Visual C++ 5.0 Professional Edition
關鍵字:?
kbmt kbdatabase kbhowto kbprogramming KB167523 KbMtzh
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:167523? (http://support.microsoft.com/kb/167523/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。
Retired KB Article依現狀不再更新的知識庫內容免責聲明
本文旨在說明 Microsoft 不再提供支援的產品。因此,本文係依「現狀」提供,不會再更新。