Tabla de firmas

La tabla Signature contiene la información que identifica de forma única una firma de archivo. Para más información sobre las firmas, consulte Firmas digitales y Windows Installer.

La tabla Signature tiene estas columnas.

Columna Tipo Clave Nullable
Firma Identificador Y No
FileName Texto No No
MinVersion Texto No Y
MaxVersion Texto No Y
MinSize DoubleInteger No Y
MaxSize DoubleInteger No Y
MinDate DoubleInteger No Y
MaxDate DoubleInteger No Y
Idiomas Texto No Y

 

Columnas

Signature

La columna Signature es una firma de archivo única.

FileName

Nombre del archivo.

MinVersion

Versión mínima del archivo, con una comparación de lenguajes. Si se especifica este campo, el archivo debe tener una versión que sea al menos igual a MinVersion. Si el archivo tiene una versión igual al valor del campo MinVersion, pero el lenguaje especificado en la columna Language difiere, el archivo no cumple los criterios de filtro de firma.

Nota

El lenguaje especificado en la columna Languages se usa en la comparación y no hay ninguna manera de omitir el lenguaje. Si desea que un archivo cumpla el requisito del campo MinVersion independientemente del lenguaje, debe escribir un valor en el campo MinVersion que sea uno menor que el valor real. Por ejemplo, si la versión mínima del filtro es 2.0.2600.1183, use 2.0.2600.1182 para buscar el archivo sin que coincida con la información de lenguaje.

 

MaxVersion

Versión máxima del archivo. Si se especifica este campo, el archivo debe tener una versión que sea como máximo igual a MaxVersion.

MinSize

Tamaño mínimo del archivo. Si se especifica este campo, el archivo sometido a inspección debe tener un tamaño que sea al menos igual a MinSize. Debe ser un número no negativo.

MaxSize

Tamaño máximo del archivo. Si se especifica este campo, el archivo sometido a inspección debe tener un tamaño que sea como máximo igual a MaxSize. Debe ser un número no negativo.

MinDate

Fecha y hora de modificación mínima del archivo. Si se especifica este campo, el archivo bajo inspección debe tener una fecha y hora de modificación que sea al menos igual a MinDate. Debe ser un número no negativo. El formato de este campo es dos valores empaquetados de 16 bits de tipo WORD. El valor WORD de orden superior especifica la fecha en formato de fecha MS-DOS. El valor WORD de orden bajo especifica la hora en formato de hora MS-DOS. Un valor de 0 para el valor de hora representa la medianoche. Consulte la sección Comentarios.

MaxDate

Fecha máxima de creación del archivo. Si se especifica este campo, el archivo bajo inspección debe tener una fecha de creación que sea como máximo igual a MaxDate. Debe ser un número no negativo. El formato de este campo es dos valores empaquetados de 16 bits de tipo WORD. El valor WORD de orden superior especifica la fecha en formato de fecha MS-DOS. El valor WORD de orden bajo especifica la hora en formato de hora MS-DOS. Un valor de 0 para el valor de hora representa la medianoche. Consulte la sección Comentarios.

Languages

Lenguajes admitidos por el archivo.

Observaciones

Esta tabla se usa con la tabla AppSearch.

Se busca la firma mediante las tablas RegLocator, IniLocator, CompLocator y DrLocator. Por lo general, las columnas de esta tabla no se localizan. Si un autor decide buscar productos en varios lenguajes, puede haber una entrada distinta incluida en la tabla para cada lenguaje.

La tabla Signature suele seguir las reglas de control de versiones de archivos de Windows Installer. Los lenguajes especificados en la columna Languages de la tabla Signature no se evalúan a menos que las versiones de archivo sean equivalentes. La columna Languages garantizará que un archivo sea de un lenguaje determinado si es de la versión solicitada. No hay ningún método disponible para omitir la columna Languages. Un valor NULL especificado en la columna Languages se trata como un archivo sin un lenguaje y no coincide con la firma de archivo de un archivo con un lenguaje que aparece en la tabla Signature. En el ejemplo siguiente se busca una versión determinada de MSI.DLL.

DrLocator (tabla)

Signature_ Parent Ruta de acceso Profundidad
MsiDll {null} c:\windows\system32 0

 

AppSearch Table

Propiedad Signature_
MsiDll MsiDll

 

Signature (tabla)

Firma FileName MinVersion MaxVersion MinSize MaxSize MinDate MaxDate Idiomas
MsiDll msi.dll 2.0.2600.1106 {null} {null} {null} {null} {null} 0

 

En este caso, y en Windows XP SP1, la acción AppSearch establece MSIDLL en c:\windows\system32\msi.dll porque MSI.DLL es un archivo neutro del lenguaje. Si el valor de la columna Languages cambia de 0 a 1033, la acción AppSearch no encuentra la msi.dll coincidente y la propiedad MSIDLL no está definida.

No se puede usar la tabla Signature para consultar solo los lenguajes. Para buscar diferentes versiones de lenguaje de un archivo, debe tener una entrada independiente en la tabla Signature para cada versión de lenguaje. Si se proporcionan varios lenguajes en la columna Languages, la búsqueda es para un archivo que admita todos esos lenguajes.

El formato de las columnas MinDate y MaxDate son dos valores empaquetados de 16 bits de tipo WORD.

Date WORD

Bits Contenido
0–4 Día del mes (1-31)
5-8 Mes (1 = enero, 2 = febrero, etc.)
9-15 Desplazamiento del año de 1980 (agregue 1980 para obtener el año real)

 

Time WORD

Bits Contenido
0–4 Segundos divididos por 2
5-10 Minutes (0-59)
11-15 Hora (0-23 en formato horario de 24 horas)

 

La fórmula para calcular los valores de campo MinDate y MaxDate es:

( (Año - 1980) * 512 + Mes * 32 + Día ) * 65536 + Horas * 2048 + Minutos * 32 + segundos/2

Validación

ICE03
ICE06