Una clave del regitro
Publicado por Guillermo (3 intervenciones) el 09/06/2002 22:05:06
Hola amigos, estoy haciendo un programa muy interesante, pero tengo un problema.
La idea del programa es la siguiente: necesito saber cuando se ejecutan los programas, cualquiera, la calculadora, el word, etc:
eso se puede hacer facilmente, gracias a lo que me digo luciano aibar, con la clave de registro:
(predeterminado) que se encuentra en
HKEY_CLASSES_ROOT\\\\exefile\\\\shell\\\\open\\\\command
que es \\\"%1\\\" %*
el \\\"%1\\\" manda entre comillas la dirección del programa y el %* los parámeteros del programa, es decir que cuando ya arrastro un archivo sobre un execuatable me va a tirar la dirección del programa entre comillas un espacio y la/s direccion/es de el/los archivo/s arrastrado/s sobre ese programa
Hasta ahí todo bien, el problema es cuando se hace doble click sobre un archivo que no es ejecutable, por ejemplo un txt, supongamos que es \\\"C:\\\\archivo.txt\\\", si nos fijamos en: HKEY_CLASSES_ROOT\\\\txtfile\\\\shell\\\\open\\\\command, veremos que casi siempre va a ser:
C:\\\\windows\\\\notepad.exe %1 es decir abre el notepad y como parametro la dirección del archivo en el cual hice doble click, a ese archivo se refiere %1. Ahora si tenemos en cuenta lo exlicado anteriormente cuando se abre un executable supuestamente yo cuando hago doble click en un txt supongamos en C:\\\\archivo.txt, en HKEY_CLASSES_ROOT\\\\txtfile\\\\shell\\\\open\\\\command
obtendría C:\\\\windows\\\\notepad.exe c:\\\\archivo.txt a lo cual yo supongo, y aquí es donde tengo la duda, en HKEY_CLASSES_ROOT\\%
La idea del programa es la siguiente: necesito saber cuando se ejecutan los programas, cualquiera, la calculadora, el word, etc:
eso se puede hacer facilmente, gracias a lo que me digo luciano aibar, con la clave de registro:
(predeterminado) que se encuentra en
HKEY_CLASSES_ROOT\\\\exefile\\\\shell\\\\open\\\\command
que es \\\"%1\\\" %*
el \\\"%1\\\" manda entre comillas la dirección del programa y el %* los parámeteros del programa, es decir que cuando ya arrastro un archivo sobre un execuatable me va a tirar la dirección del programa entre comillas un espacio y la/s direccion/es de el/los archivo/s arrastrado/s sobre ese programa
Hasta ahí todo bien, el problema es cuando se hace doble click sobre un archivo que no es ejecutable, por ejemplo un txt, supongamos que es \\\"C:\\\\archivo.txt\\\", si nos fijamos en: HKEY_CLASSES_ROOT\\\\txtfile\\\\shell\\\\open\\\\command, veremos que casi siempre va a ser:
C:\\\\windows\\\\notepad.exe %1 es decir abre el notepad y como parametro la dirección del archivo en el cual hice doble click, a ese archivo se refiere %1. Ahora si tenemos en cuenta lo exlicado anteriormente cuando se abre un executable supuestamente yo cuando hago doble click en un txt supongamos en C:\\\\archivo.txt, en HKEY_CLASSES_ROOT\\\\txtfile\\\\shell\\\\open\\\\command
obtendría C:\\\\windows\\\\notepad.exe c:\\\\archivo.txt a lo cual yo supongo, y aquí es donde tengo la duda, en HKEY_CLASSES_ROOT\\%
Valora esta pregunta


0