2012-01-18 67 views
12

En el Inno Setup FAQ hay un ejemplo de cómo asignar tipos de archivos a mi software. Tratar con el registro no es un problema.Inno Setup Asociación de archivos opcional (seleccionable por el usuario)

Pero, ¿cómo puedo proporcionar al usuario la opción de qué tipo de archivo quiere asignar? Digamos que he escrito un editor simple para archivos de texto y quiero preguntar si el usuario quiere asignar .txt y/o .nfo a mi programa. Una página de configuración con casillas de verificación sería genial.

¿Cómo hacer esto con Inno Setup?

Respuesta

17

Agregue una "Tarea" a la configuración, y asocie cada una de las entradas de registro de su asociación de archivos con esta Tarea. Por ejemplo:

[Tasks] 
Name: mypAssociation; Description: "Associate ""myp"" extension"; GroupDescription: File extensions: 

[Registry] 
Root: HKCR; Subkey: ".myp"; ValueType: string; ValueName: ""; ValueData: "MyProgramFile"; Flags: uninsdeletevalue; Tasks: mypAssociation 
Root: HKCR; Subkey: "MyProgramFile"; ValueType: string; ValueName: ""; ValueData: "My Program File"; Flags: uninsdeletekey; Tasks: mypAssociation 
... 


Consulte la documentación de 'Tareas' here.

+0

maravilloso :-) gracias – 0xDEADBEEF

+0

Esto funcionó perfectamente para mí también, gracias! :) – Kaitlyn

0

El uso de la sección [Tareas] es la forma más fácil de asociar archivos con su aplicación en la Configuración Inno como lo ha dicho @Sertac. Luego debe completar los detalles de la extensión que desea asociar en la sección [Registro]. Para obtener más información sobre este cheque, visite Inno Setup FAQ page.

+1

Su enlace está roto de alguna manera. Pero probablemente se refería a ['este consejo de FAQ '] (http://www.jrsoftware.org/isfaq.php#assoc) del cual Sertac solo mostraba una parte en su respuesta (de ahí que haya' ... 'en la parte inferior de su ejemplo de código). Entonces, tu respuesta no agrega nada a este hilo. Sin embargo, dejar un comentario con el enlace a esas preguntas frecuentes podría ser útil y valdría la pena mencionarlo. – TLama

+0

Hola @TLama, sí, tenías razón sobre el enlace. Lo he corregido También me resulta útil este enlace a las preguntas frecuentes, porque explica de qué se tratan todos estos enlaces en la sección [Registro]. –

1

Puede encontrar información sobre la asociación de archivos en ınnosetup en una respuesta anterior: Stackoverflow - Inno setup file association

Y aquí, podemos encontrar un exemple con el fin de utilizar esta asociación de archivos en el programa .NET, simplemente mediante el análisis de los argumentos en el método principal: Stackoverflow - Associate a file extension with WPF application

+1

Bueno, incluso aquí, el OP sabe cómo hacer la asociación en sí (ver la primera oración de esta pregunta). La pregunta aquí es cómo hacer que esta asociación sea condicional de alguna manera. Es por eso que Sertac sugirió usar la sección '[Tareas]' y acortar el guión de las preguntas frecuentes (que OP mencionó en su pregunta). Así que incluso esto no agrega nada al * thread *. – TLama

Cuestiones relacionadas