Error en CallDll

Post Reply
User avatar
fgondi
Posts: 636
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España
Contact:

Error en CallDll

Post by fgondi »

Hola grupo,

Estoy compilando con xHarbour los programas que tengo en Harbour. Compila perfectamente pero al ejecutar el programa me lanza el siguiente error:
Image

La dll en cuestión pertenece a la clase tLFN:

Code: Select all

DLL32 Static Function apiFullFName(cFileName AS STRING, nBuffer AS LONG,
                                   @lpBuffer AS STRING);
    AS LONG PASCAL FROM "GetFullPathNameA" LIB "kernel32.dll"
En Harbour funciona perfectamente, pero no se que tengo que cambiar para que funcione en xHarbour.
Un saludo
Fernando González Diez
ALSIS GHE Sistemas Informáticos
User avatar
fgondi
Posts: 636
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España
Contact:

Post by fgondi »

Hola grupo,

Solucionado.

Comprobé que el archivo testlnf2.prg del directorio samples funcionaba correctamente.

La diferencia era los parametros que se pasaban. Una vez cambiados funciona correctamente.

Code: Select all

DLL32 Static Function apiFullFName(lpszFile AS LPSTR, cchPath AS DWORD,;
               lpszPath AS LPSTR, @nFilePos AS PTR);
    AS LONG PASCAL FROM "GetFullPathNameA" LIB "kernel32.dll"
Lo que no se es el motivo por el que ahora cambia los parámetros a pasar y si ese problema me lo encontraré en alguna dll mas.
Un saludo
Fernando González Diez
ALSIS GHE Sistemas Informáticos
Post Reply