PDA

Ver la Versión Completa : Aplicacion predeterminado para abrir archivos


Sotrono
19-12-2004, 00:45:25
Hola. Como va?
Lo que quiero hacer es que mi aplicacion sea la predeterminada para abrir archivos con una extension en especial. O sea que al hacer doble click, por ejemplo en el archivo Curso.txt, me abra el editor de textos creado por mi.

Lepe
19-12-2004, 15:22:58
En Project---> Options tienes Target Extension, si pones algo Delphi registrará esa extensión automaticamente y saldrá el icono de tu aplicación para esa extensión.

Cuando das un doble clic sobre un archivo en el explorador de windows, se mira en el registro de windows que aplicación tiene asociada esa extensión, y se lanza una "Linea de comando", normalmente

"c:\....\Word.exe "c:\...\Mi documento.doc" [parametros opcionales]

Para averiguar los parametros, hay 2 opciones::
- Usa GetcommandLine para averiguar la linea completa
- Usa Paramstr[X] para obtener el parámetro que quieras.
Por ejemplo: Paramstr[0] --> es el nombre de tu aplicación
Paramstr[1] --> aqui seria el archivo de word

Usando GetCommandLine:


// OnCreate de la ventana principal:
commandline: String;
forzar, reiniciar, apagar: Boolean;

begin

commandline := getcommandline;
if length(commandline) > 1 then
begin
forzar := pos('forzar', lowercase(commandline)) > 0;
apagar := pos('apagar', lowercase(commandline)) > 0;
reiniciar := pos('reiniciar', lowercase(commandline)) > 0;
if forzar then
begin
if apagar then
forzarapagar1click()
else if reiniciar then
forzarreiniciar1click()
end
else if apagar then
apagar1click()
else if reiniciar then
reiniciar1click();

en este caso la aplicación puede recibir 3 parametros y se pueden conjugar:
forzar apagar
forzar reiniciar
apagar
reiniciar

Saludos.