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