Con este código recuperamos el nombre del archivo ejecutable asociado a una extensión de archivo:
#DEFINE MAX_PATH 260
DECLARE INTEGER FindExecutable IN Shell32 ;
STRING lpFile, STRING lpDirectory, STRING @lpResult
* Extensión de archivo para buscar el programa asociado
lcFileExt = ".doc"
* Un archivo con la extensión especificada es necesario.
* Creamos un archivo temporal.
lcTempFile = ADDBS(SYS(2023)) + SYS(2015) + lcFileExt
STRTOFILE("*", lcTempFile )
lcBuffer = SPACE(MAX_PATH)
lnExeHandle= FindExecutable(lcTempFile, "", @lcBuffer)
DO CASE
CASE lnExeHandle > 32
lcExeName = LEFT(lcBuffer, AT(CHR(0), lcBuffer)-1)
CASE lnExeHandle= 31
* No hay un programa asociado a esta extensión
lcExeName = ""
? "No hay ninguna aplicación asociada para el tipo de archivo especificado"
OTHERWISE
* Algún otro error
lcExeName = ""
? lnResult
ENDCASE
? lcExeName
ERASE (lcTempFile)
Entrada Original: Retrieve name of EXE associated with file extension
No hay comentarios. :
Publicar un comentario
Los comentarios son moderados, por lo que pueden demorar varias horas para su publicación.