如何建立 MSDE 2000 sample.msi 檔案的補充程式檔案

文章翻譯 文章翻譯
文章編號: 314131 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

結論

本文將告訴您,如何為 Microsoft SQL Server 2000 桌面引擎 (MSDE 2000) 名為 Sample.msi 建立補充程式檔案。 Sample.msi 是隨附於開發工具的 SQL Server 標準]、 [SQL Server 企業] 和 [SQL Server 開發 o 人 h 員 ? 工 u 具 ? 版的範例套件。

一般資訊

您可以使用 Sample.msi 檔案來封裝 MSDE 2000 與您的應用程式。與 Sample.msi 檔案使用,您可以變更產品程式碼,並在其中封裝程式碼,以便安裝套件不會安裝在同一部電腦其他產品和衝突。如需詳細資訊請參閱 SQL Server 2000 線上叢書 》 中的 [管理桌面引擎安裝封裝檔案] 主題]。

若要建立 MSDE 2000 的補充程式檔案,您必須有實心瞭解 Windows 「 安裝程式技術。如需有關 Windows 「 安裝程式技術的詳細資訊,請造訪下列 Microsoft 網站以檢視 Windows Installer SDK 文件:

http://msdn.microsoft.com
您必須有 Windows Installer SDK 1.5 或 2.0 遵循本文中所述之範例步驟安裝的版本。Windows SDK 2.0 「 安裝程式會包含在 Windows 平台 SDK 中。 此外,請確定適當的路徑存在下列檔案:

  • Orca.exe
  • Guidgen.exe
  • Msimsp.exe
  • Makecab.exe
  • Patchwiz.dll
您必須熟悉 Orca.exe 工具執行基本的編輯,變更產品程式碼變更此封裝程式碼,並新增和修改.msi 檔案內的資料庫資料表的資料列。

如需有關如何使用 Orca.exe 的詳細資訊,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
255905如何使用 Orca 資料庫編輯器來編輯 Windows 「 安裝程式檔案

建立 Service Pack 補充程式的步驟

這些範例步驟說明如何建立製造廠商 (RTM) Sample.msi 「 MSDE 2000 發佈的 Service Pack 1 修補程式。

注意: 您可以用替代 Service Pack 1 與服務套件 2。
  1. 建立該資料夾並再複製檔案:
    1. 本文使用名為 \\MachineA\Share1 的範例共用。時遵循範例步驟,您必須使用共享資料夾,根據來設定您自己的電腦共用。使資料夾結構類似下列的結構及請確定您有完整的控制權限上所有共用時建立補充程式:

      \\MachineA\Share1\RTM
      \\MachineA\Share1\RTM\AdminImage
      \\MachineA\Share1\Sp1
      \\MachineA\Share1\Sp1\AdminImage
      \\MachineA\Share1\RTM\Patch


      注意: 可以是本機的資料夾。此外,您可以使用 「 通用命名慣例 (UNC),當您建置一個修補程式,如果資源是從不同電腦。
    2. MSDE 2000 RTM Sample.msi 和 Sqlrun.cab 檔案,複製到 [\\MachineA\Share1\RTM] 資料夾中。如果您先前修改 Sample.msi 檔案 (藉由修改產品代碼]、 [套件] 程式碼] 或 [在 Sample.msi 名稱),將修改過的 Sample.msi 檔案複製。

      注意: [Sample.msi 檔案是位於在 「 Devtools\Samples\Desktop 目錄和 Sqlrun.cab 檔案位於 MSDE\Setup 目錄。
    3. MSDE 2000 Service Pack 1 Sqlrun01.msi 和 Sqlrun.cab 檔案,複製到 [\\MachineA\Share1\Sp1] 資料夾中。

      注意: Sqlrun01.msi 和 SP1 的合併模組或 Sqlrun01.msi 及 SP2 的合併模組所發行給通用 MSDN 訂閱者。
  2. 變更或驗證封裝程式碼和 Sqlrun01.msi 檔案中的產品程式碼。


    1. 注意: 當您產生全域唯一識別項 (GUID) 時,請務必將它轉換成全部大寫。這適用於所有本文所提的 GUID。所有的 Windows Installer SDK 文件,在產品程式碼和封裝程式碼的 GUID 必須是字母大寫。因為 Guidgen.exe 公用程式會產生包含大小寫字母的 GUID,您必須變更大小寫字母為大寫,為產品代碼或封裝程式碼使用之前這些 GUID 中。

    2. 變更產品程式碼,以符合產品代碼從 Sample.msi 檔案 Sqlrun01.msi 屬性 資料表中。
    3. 使用 Guidgen.exe 工具來產生新的 GUID。請確定新的 GUID 為大寫。從 Sqlrun01.msi 的摘要資訊,封裝程式碼至新的 GUID 使用變更 [Orca.exe 工具或 Msiinfo.exe] 工具。
  3. 建立 Windows 「 安裝程式的系統管理影像:


    1. 使用類似下列的指令來建立 Sample.msi 檔案的系統管理影像:
      msiexec.exe /a \\MachineA\Share1\RTM\Sample.msi TARGETDIR=\\MachineA\Share1\RTM\AdminImage /L*v \\MachineA\Share1\RTM\AdminImage\Admin.log
    2. 為 [Sqlrun01.msi 建立系統管理影像檔案使用類似下列的命令:
      msiexec.exe /a \\MachineA\Share1\sp1\Sqlrun01.msi TARGETDIR=\\MachineA\Share1\Sp1\AdminImage /L*v \\MachineA\Share1\Sp1\AdminImage\Admin.log
    3. 使用 Orca.exe 工具或 Msiinfo.exe] 工具,並確定兩個.msi 檔案從前面的兩個 AdminImage 資料夾不會壓縮。
  4. 進行補充程式建立屬性檔案:


    1. 從 Windows 安裝程式 SDK Template.pcp 檔案複製到 \\MachineA\Share1\Patch,然後使用 [Orca.exe 工具分別在資料表] 或 [摘要資訊中執行下列變更:
      1. ImageFamilies 表具有下列值中加入資料列:
        摺疊此表格展開此表格
        資料行
        家族MSDEApps
        MediaSrcPropNamemsde_sp1_update
        MediaDiskId2
        FileSequenceStart1000
      2. UpgradedImages 表具有下列值中加入資料列:
        摺疊此表格展開此表格
        資料行
        升級MSDE_sp1
        MsiPath\\MachineA\Share1\Sp1\AdminImage\Sqlrun01.msi
        家族MSDEApps

      3. TargetImages 表具有下列值中加入資料列:
        摺疊此表格展開此表格
        資料行
        目標MSDE_rtm
        MsiPath\\MachineA\Share1\RTM\AdminImage\Sample.msi
        升級MSDE_sp1
        順序1
        ProductValidateFlags0x00000922
        IgnoreMissingSrcFiles0


      4. 屬性 資料表中的各資料列變更下列值:
        摺疊此表格展開此表格
        資料行
        PatchOutPutpath\\MachineA\Share1\Patch
        PatchGUID使用新的 GUID 所產生的 Guiden.exe。(請確定該 GUID 是以大寫)。
        AllowProducctCodeMismatches0
        AllowProductVersionMajorMismatches0
        IncludeWholeFilesOnly1
      5. 變更新的 GUID 所產生的 Guidgen.exe Template.pcp 檔案的封裝程式碼。請確定 GUID 是大寫字母。
      6. Template.pcp 檔案重新命名為 Msde.pcp。
    2. 藉由使用 Msimsp.exe 工具讓補充程式檔案。您可以使用類似下列的範例命令的命令:
      msimsp.exe -s \\MachineA\Share1\Patch\msde.pcp -p \\MachineA\Share1\Patch\Sample.msp -l \\MachineA\Share1\Patch\log.txt -f \\MachineA\Share1\Patch\tmp
      檢查 Log.txt 記錄檔,以確定 Msimsp.exe 工具會建立此補充程式之後,會發生任何錯誤。如果 Msimsp.exe 工具已順利建立補充程式,一個名為 Sample.msp 的檔案會位於 [\\MachineA\Share1\Patch] 資料夾。
    3. 測試補充程式檔案。Sample.msi 使用下列的範例命令來安裝的電腦上套用此補充程式:
      Msiexec.exe /p Sample.msp REINSTALL=ALL REINSTALLMODE=omus /L*v SamplePatch.txt

      檢查 SamplePatch.txt 記錄檔,並確認補充程式安裝成功。

      注意REINSTALL = ALL 已經先前安裝的方法來重新安裝那些功能,只。此外,如果您將 REINSTALL 屬性設定您必須設定 REINSTALLMODE 屬性,表示的型別重新安裝您要執行。
      摺疊此表格展開此表格
      REINSTALLMODE描述
      o如果檔案遺漏或較早版本是存在,重新安裝。
      m重新寫入前往 KEY_LOCAL_MACHINE 或 HKEY_CLASSES_ROOT 登錄 Hive 登錄 表中,所有必要的登錄項目。重新寫入所有資訊從 [類別 表格、 動詞 資料表、 PublishComponent 資料表、 ProgID 資料表、 MIME 資料表、 圖示 資料表、 延伸模組 資料表以及 AppID 表格,而不管的電腦或使用者的工作分派。重新安裝所有合格的元件。
      u重新寫入前往 HKEY_CURRENT_USER 或 HKEY_USERS 登錄 Hive 登錄 表中,所有必要的登錄項目。
      s請重新安裝所有捷徑,re-cache 覆寫任何現存的捷徑和圖示的所有圖示。

屬性

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

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com