Таблица классов
Таблица Class содержит сведения, связанные с COM-сервером, которые должны быть созданы в рамках объявления продукта. Каждая строка может создавать набор разделов и значений реестра. Связанные сведения о ProgId включаются в эту таблицу.
Таблица Class содержит следующие столбцы.
Столбец | Type | Ключ | Допускает значения NULL |
---|---|---|---|
CLSID | GUID | Да | N |
Контекст | Идентификатор | Да | N |
Компонент_ | Идентификатор | Да | N |
ProgId_Default | Text | N | Да |
Описание | Text | N | Да |
Appid_ | GUID | N | Да |
FileTypeMask | Text | N | Да |
Значок_ | Идентификатор | N | Да |
IconIndex | Целое число | N | Да |
DefInprocHandler | Имя файла | N | Да |
Аргумент | Форматированные | Нет | Да |
Функция_ | Идентификатор | Нет | N |
Атрибуты | Целое число | N | Да |
Сведения о столбце
-
CLSID
-
Идентификатор класса com-сервера.
-
Контексте
-
Контекст сервера для этого сервера. Введите одно из следующих значений для ключа CLSID.
КЛЮЧ CLSID Описание LocalServer Указывает полный путь к 16-разрядному приложению локального сервера. LocalServer32 Указывает полный путь к 32-разрядному приложению локального сервера. InprocServer Указывает путь к внутрипроцессной серверной библиотеке DLL. InprocServer32 Указывает путь к 32-разрядному внутрипроцессного сервера и модели потоков. -
Компонент_
-
Внешний ключ в таблице Компонент , указывающий компонент, файл ключа которого предоставляет COM-сервер.
-
ProgId_Default
-
Идентификатор программы по умолчанию, связанный с этим идентификатором класса. Этот столбец является внешним ключом в таблице ProgID.
-
Описание
-
Локализованное описание, связанное с идентификатором класса и идентификатором программы.
-
Appid_
-
Идентификатор приложения, содержащий сведения DCOM для связанного приложения (строковый GUID). Этот столбец является внешним ключом в таблице AppId.
-
FileTypeMask
-
Содержит сведения для ключа HKCR (clSID).
Если существует несколько шаблонов, они должны быть разделены точкой с запятой, и создаются числовые подразделы: 0, 1, 2... Дополнительные сведения об этой функции см. в разделе GetClassFile.
-
Значок_
-
Файл, предоставляющий значок, связанный с данным идентификатором CLSID. Установщик записывает запись в этом столбце в ключ DefaultIcon, связанный с ProgId. Если значение не равно NULL, столбец является внешним ключом в таблице Значок. Если значение равно NULL, COM-сервер предоставляет ресурс значка. Для правильного отображения объявленных сопоставлений и ярлыков файлов в этом столбце требуется значение, отличное от NULL.
-
IconIndex
-
Индекс значка в файле значка. Может принимать значение NULL.
Только не отрицательные числа.
-
DefInprocHandler
-
Это поле задает внутрипроцессный обработчик по умолчанию для контекста сервера, указанного в поле Контекст.
Это поле должно иметь значение NULL, если в поле Контекст отображается ключ CLSID InprocServer или InprocServer.
Если в поле Контекст отображается ключ CLSID LocalServer или LocalServer32, значение в поле DefInprocHandler определяет внутрипроцессный обработчик по умолчанию.
Значение Описание нечисловое значение Установщик обрабатывает нечисловое значение в поле DefInprocHandler как системный файл, служащий 32-разрядным внутрипроцессным обработчиком, заданным ключом InprocHandler32. Null Поля DefInprocHandler и Argument могут иметь значение NULL для ключа CLSID LocalServer или LocalServer32. 1 = по умолчанию (система) По умолчанию используется 16-разрядный внутрипроцессный обработчик, заданный InprocHandler. В этом случае значение InprocHandler — это имя в реестре, под которым хранится значение внутрипроцессного обработчика по умолчанию. Например, HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID. 2 = по умолчанию (система) По умолчанию используется 32-разрядный внутрипроцессный обработчик, заданный inprocHandler32. В этом случае значение InprocHandler32 — это имя в реестре, под которым хранится значение внутрипроцессного обработчика по умолчанию. Например, HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID. 3 = по умолчанию (система) По умолчанию используется 16-разрядный или 32-разрядный внутрипроцессный обработчик. -
Аргумент
-
Если ключ CLSID LocalServer или LocalServer32 отображается в поле Контекст, текст в этом поле регистрируется как аргумент против сервера и используется COM для вызова сервера. Поля DefInprocHandler и Argument могут иметь значение NULL, если в поле Контекст отображается LocalServer или LocalServer32.
Обратите внимание, что разрешение свойств в поле Argument ограничено. Свойство, отформатированное как [Property] в этом поле, может быть разрешено только в том случае, если свойство уже имеет предполагаемое значение при установке компонента, владеющего классом. Например, для разрешения аргумента "[#MyDoc.doc]" в правильное значение необходимо установить файл MyDoc.doc и компонент, которому принадлежит класс .
-
Функция_
-
Внешний ключ в таблице компонентов , указывающий компонент, предоставляющий COM-сервер.
Внешний ключ к столбцу один из таблиц признаков.
-
Атрибуты
-
Если в этом столбце задан msidbClassAttributesRelativePath , для COM-серверов можно использовать имя файла без операционной системы. Установщик регистрирует имя файла только вместо полного пути. Это позволяет серверу в текущем каталоге иметь приоритет и разрешить несколько копий одного и того же компонента.
attribute Decimal Шестнадцатеричный msidbClassAttributesRelativePath 1 0x001
Комментарии
Эта таблица упоминается при выполнении действия RegisterClassInfo или UnregisterClassInfo .
Проверка