Поделиться через


Директива 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

Указывает значение GUID, определяющее класс COM. Используйте явное значение GUID формы {nn-nnnn-nnnn-nnnn-nn} или маркер %strkey%, определенный для {nn-nnnn-nnnn-nnnn-nn} в разделе Strings INF-файла.

flags

Задает дополнительные флаги для директивы AddComClass. Флаги зарезервированы для дальнейшего использования и должны оставаться пустыми или иметь значение нулю.

com-class-install-section

Ссылается на раздел INF-writer, содержащий сведения о регистрации КЛАССА COM. Поле com-class-install-section является необязательным. Дополнительные сведения см. в следующем разделе "Примечания" и дополнительные сведения о классах COM, как правило, см. в разделе COM-клиентов и серверов.

Замечания

Код установки системы регистрирует класс COM, указанный clsid-guid.

Каждая директива AddComClass в разделе установки COM-сервера, определяемого inf-writer, может ссылаться на раздел COM-writer-class-install-section в другом месте INF-файла. Каждое имя раздела INF-записи должно быть уникальным в INF-файле и должно соответствовать общим правилам определения имен разделов. Дополнительные сведения об этих правилах см. в разделе Общие правила синтаксиса для INF-файлов.

Директива AddComClass может ссылаться на раздел с именем com-class-install-section в другом месте INF. Каждый такой раздел имеет следующую форму:

[com-class-install-section]

[Description    = COM-class-description]
[ThreadingModel = threading-model-enum]

Description

Описание является необязательным значением, описывающим класс COM.

ThreadingModel

Модель потоков является необязательным и определяет, какой сервер COM-сервера поддерживает потоковые модели.

ThreadingModel Description
Квартира Однопоточная квартира
Оба Однопоточная или многопоточная квартира
Бесплатно Многопоточность квартиры
Нейтральные Нейтральная квартира

Примечание.

Если модель потоков не указана, сервер загружается в первую квартиру, которая была инициализирована в процессе. Дополнительные сведения см. в разделе 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"

См. также