Me gustaría "vincular" algunas extensiones de archivo a mi aplicación java en Windows. Cuando el usuario hace doble clic en el archivo con la extensión "vinculada", me gustaría abrir mi aplicación y necesito saber la ruta al archivo que lanzó la aplicación.asociar una extensión de archivo personalizada con la aplicación java en Windows
Respuesta
Si despliega la aplicación. utilizando Java Web Start, se puede declarar un interés en los tipos de archivo en el archivo de inicio. Ver el demo. of the file services, que ..
..prompts al usuario asociar la extensión de archivo
.zzz
(simplemente un tipo de archivo poco probable a chocar con las asociaciones de archivos existentes) de contenido de tipotext/sleepytime
. ..
Cuando el usuario hace doble clic en un archivo .zzz
, debe abrirse en la aplicación. En realidad, la palabra 'indicaciones' no es toda la historia. Si inicia la versión en caja de arena, se le pedirá que asocie el tipo de archivo. La versión de confianza no solicita.
Para agregar más control de usuario al proceso, consulte el IntegrationService
que se introdujo en 1.6.0_18 (aún no tengo una demostración de eso). Puede ejecutarlo al inicio, después de consultar con el usuario.
esto tendría que hacerse durante la instalación. ¿Cómo planeas dejar que tu usuario instale tu aplicación?
En esta etapa, debes darte cuenta de que acabas de hacer las cosas mucho más complicadas. registrar extensiones de archivos significa entrometerse en el registro. ¿Qué sucede si el usuario ya no quiere su aplicación? o mueve el archivo que inicia su aplicación?
tendrás que elegir un creador de instalación. aquí hay una pregunta sobre eso: https://stackoverflow.com/questions/3767/what-is-the-best-choice-for-building-windows-installers
y luego tendrá que aprender el lenguaje del creador del instalador. Así es como lo que estás pidiendo se hace en nsis. recuerde que el script se ocupa de preguntas como "si el usuario desinstala mi aplicación, y no cambié las asociaciones de archivos en el momento de la instalación, ¿debo eliminar estas asociaciones de archivos en la desinstalación?" así que es un poco largo. aquí está de todos modos: http://nsis.sourceforge.net/File_Association
tal vez se puede hacer de una manera más fácil en otro creador de instalador.
Sin embargo, en este ejemplo, le da a la función de registro de nsis el comando de inicio para su aplicación, y luego agrega% 1 a ella en el comando de inicio de la asociación de archivos de Windows. por lo que debe darle el comando de inicio
javaw -cp installpath\yourcode.jar package.name.MainClassName
y entonces las cosas deberían funcionar. esto requerirá algo de experimentación, por supuesto, y deberá estar seguro de cómo iniciar su aplicación desde la línea de comando.
buena suerte!
- 1. Asociar la extensión de archivo con la aplicación en wp7.1
- 2. MacOSX - Asociar extensión de archivo con la aplicación - Programáticamente
- 3. Filtro de intención de Android: asociar la aplicación con la extensión de archivo
- 4. Asociar un tipo de archivo a una aplicación en ejecución
- 5. Crear entrada de registro para asociar la extensión de archivo con la aplicación en C++
- 6. (Iphone) asociar una aplicación a alguna extensión de archivo para abrir archivos adjuntos en la aplicación de correo
- 7. Windows 7 archivo de asociación de extensión
- 8. Cómo obtener la ruta exacta de notepad.exe para asociar una extensión de archivo
- 9. cómo crear una extensión de archivo personalizada en C#?
- 10. Guardar archivo con la aplicación mac - extensión de archivo
- 11. ¿Cómo asociar la aplicación de iPhone con _every_ tipo de archivo?
- 12. Ayuda con la extensión personalizada de Jinja2
- 13. Secuencia de comandos para asociar una extensión a un programa
- 14. Comprobar la extensión de archivo en Java
- 15. Agregue una extensión de archivo personalizada a Netbeans
- 16. Cómo asociar una extensión de archivo al ejecutable actual en C#
- 17. Retire la extensión del archivo en Java
- 18. Elegir una extensión de archivo adecuada para una aplicación
- 19. Solo archivo de nombre con extensión en Windows
- 20. Java JNI: ¿asociar recursos asignados en C con objetos java?
- 21. ¿Cómo puedo asociar el tipo de archivo de Excel (xlsx) con la aplicación de iPhone
- 22. Cómo asociar una extensión de archivo a un programa sin hacerlo el programa predeterminado
- 23. Uso de una aplicación personalizada con InstrumentationTestCase
- 24. ¿Está asociada una aplicación con una extensión determinada?
- 25. Adjunto de Gmail y extensión personalizada
- 26. Guardar FileDialog en Java elimina la extensión de archivo inicial
- 27. ¿Firma una aplicación de Windows con un archivo .SPC?
- 28. Extensión Intellisense personalizada
- 29. Ejecutar la aplicación Java en el inicio de Windows
- 30. Buscar un archivo con una cierta extensión en la carpeta
Muchas gracias por su respuesta. Una cosa más es molestar: ¿cómo saber qué archivo lanzó exactamente mi aplicación? ¿Cómo puedo leer datos sobre eso en Java? – dario111cro
Oh, parece que el archivo se envía a la aplicación en args. args [0] es "-open", mientras que args [1] contiene la ruta al archivo que inició la aplicación. Gracias por su ayuda :) – dario111cro
@ dario111cro de nada :) ¿Qué tipo de distribución eligió? ¿Fuiste con nsis? – davogotland