2010-10-19 28 views
7

Soy un novato total en Wix (y los instaladores en general) así que por favor, perdónenme.Copiar varios archivos usando comodines/recursivamente usando Wix

Mi objetivo es poder recorrer un directorio, buscar todos los archivos * .exe y copiarlos en una carpeta de destino predefinida. La cosa es que yo no sé qué son estos archivos y sus nombres, así que no puedo escribirlos uno por uno en el archivo wxs ... por lo tanto, los comodines.

Ahora, que terminó con algo como esto:

... 
<Directory Id='TARGETDIR' Name='SourceDir'> 
     <Directory Id='ProgramFilesFolder' Name='PFiles'> 
     <Directory Id='MyDir' Name='TestProj'> 
      <Component Id='MyComponent' Guid='PUT_GUID_HERE'> 
      <CopyFile Id="CopyFiles" DestinationProperty="DESTDIR" SourceName="*.exe" SourceProperty="SRCDIR" /> 
      </Component> 
     </Directory> 
     </Directory> 
</Directory> 
... 

Bueno, esto está bien si estoy leyendo sólo de SRCDIR pero lo que si hay subcarpetas? ¿Cómo busco archivos con una cierta extensión? ¿O hay otra forma de hacer esto ...?

Lo mismo con la eliminación de esos mismos archivos después de la instalación ...

Muchísimas gracias por cualquier ayuda que puede dar!

Respuesta

5

La forma de hacerlo es utilizando la herramienta de línea de comandos de John Robbin Paraffin. Va automáticamente a través de los directorios que seleccione y crea un fragmento de WiX que hace referencia a estos archivos. Paraffin es ideal para esto, ya que admite agregar nuevos archivos más adelante sin crear nuevos GUID para los archivos antiguos, es decir, admite un proyecto en evolución.

Como todo en WiX, esto es bastante complicado así que leería su publicación en este blog.

+1

Este enlace no funciona. –

+1

@StealthRabbi Lo edité para que contenga el correcto –

Cuestiones relacionadas