Tabla Clase

La tabla Class contiene información relacionada con el servidor COM que se debe generar como parte del anuncio del producto. Cada fila puede generar un conjunto de claves y valores de registro. La información de ProgId asociada se incluye en esta tabla.

La tabla Class tiene las siguientes columnas.

Columna Tipo Clave Nullable
CLSID GUID Y No
Context Identificador Y No
Component_ Identificador Y No
ProgId_Default Texto No Y
Descripción Texto No Y
AppId_ GUID No Y
FileTypeMask Texto No Y
Icon_ Identificador No Y
IconIndex Entero No Y
DefInprocHandler Nombre de archivo No Y
Argumento Con formato No Y
Feature_ Identificador No No
Atributos Entero No Y

 

Información de columna

CLSID

Identificador de Clase (ID) de un servidor COM.

Contexto

Contexto del servidor para este servidor. Escriba uno de los siguientes valores para la clave CLSID.

CLAVE CLSID Descripción
LocalServer Especifica la ruta de acceso completa a una aplicación de servidor local de 16 bits.
LocalServer32 Especifica la ruta de acceso completa a una aplicación de servidor local de 32 bits.
InprocServer Especifica la ruta a un DLL de servidor en proceso.
InprocServer32 Especifica la ruta de acceso a un servidor en proceso de 32 bits y al modelo de subprocesos.

 

Component_

Clave externa en la tabla Componente que especifica el componente cuyo archivo de clave proporciona el servidor COM.

ProgId_Default

Identificador de programa predeterminado asociado a este identificador de clase. Esta columna es una clave externa en la tabla ProgID.

Descripción

Descripción localizada asociada con el identificador de clase y el identificador de programa.

AppId_

Id. de aplicación que contiene información de DCOM para la aplicación asociada (GUID de cadena). Esta columna es una clave externa en la tabla ProgID.

FileTypeMask

Contiene información para la clave HKCR (este CLSID).

Si existen varios patrones, deben estar delimitados por un punto y coma y se generan subclaves numéricas: 0, 1, 2... Para obtener más información sobre esta funcionalidad, vea GetClassFile.

Icon_

Archivo que proporciona el icono asociado a este CLSID. El instalador escribe la entrada de esta columna en la clave DefaultIcon asociada al ProgId. Si no es NULL, la columna es una clave externa en la tabla Icono. Si es NULL, el servidor COM proporciona el recurso de icono. Las asociaciones de archivos anunciadas y los accesos directos requieren un valor distinto de NULL en esta columna para mostrarse correctamente.

IconIndex

Índice del icono en el archivo de icono. Puede ser NULL.

Solo números no negativos.

DefInprocHandler

Este campo especifica el controlador en proceso predeterminado para el contexto del servidor especificado en el campo Contexto.

Este campo debe ser NULL si aparece una clave CLSID inprocServer o InprocServer en el campo Contexto.

Si aparece una clave CLSID localServer o LocalServer32 en el campo Contexto, el valor del campo DefInprocHandler identifica el controlador en proceso predeterminado.

Value Descripción
valor no numérico El instalador trata un valor no numérico en el campo DefInprocHandler como un archivo del sistema que actúa como el controlador en proceso de 32 bits especificado por la clave InprocHandler32.
Null Los campos DefInprocHandler y Argument pueden ser NULL para una clave CLSID localServer o LocalServer32.
1 = valor predeterminado (sistema) El valor predeterminado es el controlador en proceso de 16 bits especificado por InprocHandler. En este caso, el valor de InprocHandler es el nombre del registro en el que se almacena el valor del controlador en proceso predeterminado. Por ejemplo, HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID.
2 = valor predeterminado (sistema) El valor predeterminado es el controlador de 32 bits en proceso especificado por InprocHandler32. En este caso, el valor de InprocHandler32 es el nombre del registro en el que se almacena el valor del controlador en proceso predeterminado. Por ejemplo, HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID.
3 = valor predeterminado (sistema) El valor predeterminado es un controlador en proceso de 16 o 32 bits.

 

Argumento

Si aparece una clave CLSID localServer o LocalServer32 en el campo Contexto, el texto de este campo se registra como argumento en el servidor y COM lo usa para invocar el servidor. Los campos DefInprocHandler y Argument pueden ser NULL si LocalServer o LocalServer32 aparecen en el campo Contexto.

Tenga en cuenta que la resolución de propiedades del campo Argumento está limitada. Una propiedad con formato [Property] en este campo solo se puede resolver si la propiedad ya tiene el valor previsto cuando se instala el componente propietario de la clase. Por ejemplo, para que el argumento "[#MyDoc.doc]" se resuelva en el valor correcto, el mismo proceso debe instalar el archivo MyDoc.doc y el componente que posee la clase.

Feature_

Clave externa en la tabla Característica que especifica la característica que proporciona el servidor COM.

Clave externa en la columna uno de la tabla Feature.

Atributos

Si msidbClassAttributesRelativePath se establece en esta columna, el nombre de archivo sin sistema operativo se puede usar para los servidores COM. El instalador registra el nombre de archivo solo en lugar de la ruta de acceso completa. Esto permite que el servidor del directorio actual tenga prioridad y permita varias copias del mismo componente.

Atributo Decimal Hexadecimal
msidbClassAttributesRelativePath 1 0x001

 

Observaciones

Esta tabla se conoce cuando se ejecuta la acción RegisterClassInfo o la acción UnregisterClassInfo.

Validación

ICE03
ICE06
ICE19
ICE32
ICE36
ICE41
ICE42
ICE46
ICE66
ICE69