HOW TO:使用 Tlbimp.exe 產生主要 Interop 組件
產生主要 Interop 組件最直接的方式是使用Tlbimp.exe (型別程式庫匯入工具)。
若要使用 Tlbimp.exe 產生主要 Interop 組件
在命令提示字元中輸入:
tlbimp tlbfile /primary /keyfile: filename /out: assemblyname
在此命令中,tlbfile 是包含 COM 型別程式庫的檔案、filename 是包含金鑰組的容器或檔案名稱,而 assemblyname 是以強式名稱簽名的組件名稱。
主要 Interop 組件只能參考其他主要 Interop 組件。 如果您的組件參考型別來自於協力廠商的 COM 型別程式庫,在您可以產生自己的主要 Interop 組件之前,您必須從發行者取得主要 Interop 組件。 如果您就是發行者,在您產生參考主要 Interop 組件之前,您必須為相依型別程式庫產生主要 Interop 組件。
當相依的主要 Interop 組件安裝在目前的目錄下時,並不會發現其版本號碼與原始型別程式庫的版本號碼不同。 您必須在 Windows 登錄中註冊相依的主要 Interop 組件,或使用 /reference 選項以確定 Tlbimp.exe 會尋找相依 DLL。
您還可以包裝型別程式庫的多個版本。 如需相關說明,請參閱 HOW TO:包裝型別程式庫的多個版本。
範例
下列範例匯入 COM 型別程式庫 LibUtil.tlb,並使用金鑰檔 CompanyA.snk 以強式名稱簽署組件 LibUtil.dll。 此範例會省略指定的命名空間名稱,以產生預設的命名空間 LibUtil。
tlbimp LibUtil.tlb /primary /keyfile:CompanyA.snk /out:LibUtil.dll
對於較多描述性的名稱而言 (使用 VendorName.LibraryName 命名指導原則),下列範例覆寫預設的組件檔名和命名空間名稱。
tlbimp LibUtil.tlb /primary /keyfile:CompanyA.snk /namespace:CompanyA.LibUtil /out:CompanyA.LibUtil.dll
下列範例會匯入參考 CompanyA.LibUtil.dll 的 MyLib.tlb,並使用金鑰檔 CompanyB.snk 以強式名稱簽署組件 CompanyB.MyLib.dll。 命名空間 CompanyB.MyLib 會覆寫預設的命名空間名稱。
tlbimp MyLib.tlb /primary /keyfile:CompanyB.snk /namespace:CompanyB.MyLib /reference:CompanyA.LibUtil.dll /out:CompanyB.MyLib.dll