INF AddComClass 指示詞
AddComClass 會在 com-server-install-section 內使用,並註冊 COM 類別。 COM 伺服器必須定義一或多個類別。 Windows 11 版本 24H2 和更新版本支援本節。
[com-server-install-section]
AddComClass = {clsid-guid}[, flags[, com-class-install-section]]
項目
clsid-guid
指定識別 COM 類別的 GUID 值。 使用 {nn-nnnn-nnnn-nn} 格式的明確 GUID 值,或定義至 INF 檔案之 Strings 區段中的 {nn-nn} 的 %strkey% 令牌。
flags
指定 AddComClass 指示詞的額外旗標。 旗標保留供日後使用,應保留空白或設定為零。
com-class-install-section
參考 INF 寫入器定義的區段,其中包含註冊 COM 類別的資訊。 com-class-install-section 字段是選擇性的。 如需詳細資訊,請參閱下列一節,如需一般 COM 類別的詳細資訊,請參閱 COM 用戶端和伺服器。
備註
系統設定程式代碼會註冊 clsid-guid 指定的 COM 類別。
INF 寫入器定義 COM 伺服器安裝區段中的每個 AddComClass 指示詞都可以參考 INF 檔案中其他地方的 INF-writer-defined com-class-install-section。 每個 INF 寫入器定義的區段名稱在 INF 檔案中都必須是唯一的,而且必須遵循定義區段名稱的一般規則。 如需這些規則的詳細資訊,請參閱 INF 檔案的一般語法規則。
AddComClass 指示詞可以參考 INF 中其他地方的具名 com-class-install-section。 每個這類區段都有下列形式:
[com-class-install-section]
[Description = COM-class-description]
[ThreadingModel = threading-model-enum]
描述
描述是描述 COM 類別的選擇性值。
ThreadingModel
線程模型是選擇性的,並定義 COM 伺服器支援哪些線程模型。
ThreadingModel | 描述 |
---|---|
公寓 | 單個線程 Apartment |
兩者 | 單個線程或多線程 Apartment |
免費 | 多線程公寓 |
中性 | 中性公寓 |
注意
如果未指定線程模型,伺服器就會載入至進程中初始化的第一個 Apartment。 如需詳細資訊,請參閱 InProcServer32。
範例
[Device_Install.COM]
AddComServer = VendorComServer,, VendorComServer_Inst
[VendorComServer_Inst]
ServerType = 1 ; in-proc
ServerBinary = %13%\Vendor_ComServer.dll
AddComClass = {bb2b85ab-9473-42e5-8d1a-0f01d3879879}
AddComClass = {f1baf99b-d28a-4ea3-b652-355da082d260}, 0, Vendor_ComClass_WithThreadingModel_Inst
[Vendor_ComClass_WithThreadingModel_Inst]
Description = %Vendor_ComClass_Desc%
ThreadingModel = Both
[Strings]
%Vendor_ComClass_Desc%="Vendor COM class"