Pregunta

Estoy escribiendo un instalador WIX y tengo un requisito siguiente:
Durante la instalación, lo que necesito para pasar una ruta absoluta a un archivo (llamémosle A) incluido en mi instalador a un componente COM, que ya existe en el disco duro y es una parte de otro programa. Ya he escrito una acción personalizada apropiada que espera una ruta de acceso al archivo de A. No quiero incluir un como un archivo instalado en la carpeta Archivos de programa y se elimina durante el proceso de desinstalación. En su lugar, me gustaría poner un sólo temporal en el disco duro, llamar a mi acción personalizada que hará que el componente COM para usar el contenido de A, y luego eliminar una desde el disco. ¿Hay una manera fácil de lograr este objetivo?

Me han tratado de utilizar la tabla binaria y almacenar una allí, sin embargo no sé cómo hacer referencia a una ruta absoluta utilizando. Sé que podría poner un exterior del archivo MSI, pero me gustaría mantener todos los archivos de instalación de necesidades en un único MSI.

Cualquier ayuda sería apreciada.

¿Fue útil?

Solución

Me gustaría tener este enfoque.

Instalar el archivo "A" en cualquier directorio. Ejecutar su acción personalizada necesaria para actualizar el componente COM. A continuación, ejecute otra acción personalizada o modificar la redacción actual uno para eliminar el archivo después de que ya no está en uso. Esto dejaría ningún rastro del archivo "A" y si se programa la acción personalizada que sólo se ejecutan durante la instalación no tendrá que preocuparse por ello en desinstalar.

Otros consejos

La eliminación de un archivo que instala MSI MSI medios que lo considerará "roto" y tratar de repararlo automáticamente si es llamado a hacerlo. Eso sucede de forma automática en varios casos (por ejemplo, accesos directos anunciados y el registro COM) así que recomiendo en contra de ella. Deje el archivo allí en vez -. Se hace su trabajo y no hay ningún daño en dejarlo allí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top