Tipo de acción personalizada 1
Esta acción personalizada llama a una biblioteca de vínculos dinámicos (DLL) escrita en C o C++.
Fuente
El archivo DLL se genera a partir de una secuencia binaria temporal. El campo Origen de la tabla CustomAction de contiene una clave para la tabla binaria de .
La columna Datos de la tabla Binary contiene los datos del flujo. Se asigna una secuencia independiente para cada fila. Los nuevos datos binarios se pueden insertar desde un archivo mediante msiRecordSetStream seguido de MsiViewModify para insertar el registro en la tabla. Cuando se invoca la acción personalizada, los datos del flujo se copian en un archivo temporal, que luego se procesa en función del tipo de acción personalizada.
Valor de tipo
Incluya los siguientes bits de marca en la columna Tipo de la tabla customAction de para especificar el tipo numérico básico.
Constantes | Hexadecimal | Decimal |
---|---|---|
msidbCustomActionTypeDll + msidbCustomActionTypeBinaryData | 0x001 | 1 |
Blanco
El archivo DLL se llama a través del punto de entrada denominado en el campo Destino de la tabla CustomAction, pasando un único argumento que es el identificador de la sesión de instalación actual. El nombre del punto de entrada especificado en la tabla debe coincidir con el exportado desde el archivo DLL. Tenga en cuenta que si un objeto no especifica la función de entrada. Archivo DEF o por una especificación /EXPORT: enlazador, el nombre puede tener un carácter de subrayado inicial y un sufijo "@4". La función llamada debe especificar la convención de llamada __stdcall.
Opciones de procesamiento de devolución
Incluya bits de marca opcionales en la columna Tipo de la tabla CustomAction para especificar las opciones de procesamiento de retorno. Para obtener una descripción de las opciones y los valores, vea Opciones de procesamiento de devolución de acción personalizada.
Opciones de programación de ejecución
Incluya bits de marca opcionales en la columna Tipo de la tabla CustomAction para especificar las opciones de programación de ejecución. Estas opciones controlan la ejecución múltiple de acciones personalizadas. Para obtener una descripción de las opciones, vea Opciones de programación de ejecución de acciones personalizadas.
Opciones de ejecución de In-Script
Incluya bits de marca opcionales en la columna Tipo de la tabla CustomAction para especificar una opción de ejecución en script. Estas opciones copian el código de acción en el script de ejecución, reversión o confirmación. Para obtener una descripción de las opciones, vea Acción personalizada In-Script Opciones de ejecución.
Valores devueltos
Consulte valores devueltos de acción personalizada.
Observaciones
Una acción personalizada que llama a una biblioteca de vínculos dinámicos (DLL) requiere un identificador para la sesión de instalación. Si también se trata de una acción personalizada de ejecución diferida, es posible que la sesión ya no exista durante la ejecución del script de instalación. Para obtener información sobre cómo una acción personalizada de este tipo puede obtener información de contexto, vea Obtener información de contexto para acciones personalizadas de ejecución diferida.
Cuando se exporta una tabla de base de datos, cada secuencia se escribe como un archivo independiente en la subcarpeta denominada después de la tabla, usando la clave principal como nombre de archivo (columna Nombre para la tabla Binaria), con una extensión predeterminada de ".ibd". El nombre debe usar el formato 8.3 si el sistema de archivos o el sistema de control de versiones no admite nombres de archivo largos. El archivo de archivo persistente reemplaza los datos del flujo por el nombre de archivo usado, de modo que los datos se puedan ubicar cuando se importe la tabla.
Temas relacionados