5 de diciembre de 2015

Saber la aplicación asociada a una extensión de archivo

Esta es la función en VFP:

FUNCTION AplicAsoc(tcExt)

Esta función retorna el nombre de la aplicación asociada a una extensión pasada como parámetro.

EJEMPLO:

? AplicAsoc("XLS")
EXCEL.EXE

Si la extensión pasada como parámetro no está asociada a ninguna aplicación, la función retorna una cadena vacia.

FUNCTION AplicAsoc(tcExt)
 LOCAL lcArc, lcApp, ln, ll, lc
 DECLARE LONG FindExecutable ;
  IN SHELL32.DLL ;
  STRING lpfile, ;
  STRING lpdirectory, ;
  STRING lpresult
 lcArc = FORCEEXT(SYS(5)+CURDIR()+SYS(2015),tcExt)
 ln = FCREATE(lcArc)
 ll = FCLOSE(ln)
 lc = SPACE(255)
 lcApp = ""
 IF FindExecutable(lcArc,"",@lc) >= 32
  lcApp = JUSTFNAME(SUBSTR(lc,1,AT(CHR(0),lc)-1))
 ENDIF
 IF FILE(lcArc)
  DELETE FILE (lcArc)
 ENDIF 
 RETURN lcApp
ENDFUNC

JMatheus

No hay comentarios. :

Publicar un comentario