tag metaetiqueta etiquetas encabezado código como codigo agregar agrega wix heat

wix - metaetiqueta - los archivos generados por calor no pueden encontrar el directorio de SourceDir



wix head tag (2)

Debería agregar el parámetro -var para calentar la línea de comando:

De la ayuda heat.exe:

-var VariableName sustituto File / @ Source = "SourceDir"

con un preprocesador o una variable wix. Por ejemplo:

-var var.MySource

se convertirá en File / @ Source = "$ (var.MySource) / myfile.txt"

y

-var wix.MySource

se convertirá en File / @ Source = "! (wix.MySource) / myfile.txt"

Estoy ejecutando calor para generar un archivo wxs. El código es el siguiente.

Quiero agregar todos los archivos desde dir.prompts al archivo wxs en el instalador. Y agregué esto para ser parte del proceso de compilación automatizado (de modo que no puedo modificar el archivo wxs una vez que se ha generado).

Se genera el archivo wxs, y se ve algo como lo siguiente. Sin embargo, Light se queja de que no puede encontrar dónde está SourceDir / Valid.wav. Así que supongo que mi pregunta es, ¿es SourceDir el directorio del que estoy leyendo los archivos, o algún directorio mágico del que no tengo conocimiento? Muchas gracias.

<Fragment> <ComponentGroup Id="COMPONENTS"> <Component Id="dmp120F8C2794******" Directory="dir31A7EE61C56025FE2564A81E28E8C132" Guid="{6D40EBC0-***-***-B972-**********}"> <File Id="fil919100C2******D045EC131" KeyPath="yes" Source="SourceDir/Valid.wav" /> </Component> <exec program ="${dir.wix}/heat.exe"> <arg value = "dir"/> <arg line = "${dir.prompts}"/> <arg value= "-gg"/> <arg line="-cg &quot;COMPONENTS&quot;"/> <arg line = "-out &quot;${dir.thisinstaller}//COMPONENTS.wxs&quot;"/> </exec>


Tenga en cuenta que Light buscará SourceDir adicionales para su archivo si los agrega a la ruta de búsqueda con -b

p.ej

light.exe -b Foo ...

(Respuesta de: https://.com/a/6920979/640282 )