C/Visual C - dll

 
Vista:

dll

Publicado por santi (1 intervención) el 28/06/2001 21:37:23
como puedo coger las funciones de de un dll en c o c++ o visual c o borland builder
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:dll

Publicado por Googol (255 intervenciones) el 29/06/2001 16:39:43
Neceistarás saber los nombres de la DLL, los parámetros que tienen, etc. El nombre lo puedes sacar con el programa DumpBin que viene con el Visual C++, con el parámetro /EXPORT. Pero vamos, lo suyo es que tuvieras un .h para saber los parámetros.
Luego tienes que utilizar las funciones del API de Windows. Lo primero, necesitas cargar la DLL. Para eso se utiliza:

HMODULE LoadLibrary(char *NombreFichero)

(devuelve NULL si falla).

Cuando acabes de usarla tendrás que llamar a

BOOL FreeModule(HMODULE libreria)

que recibe como parámetro el valor devuelto por la función LoadLibrary.

La función importante, de todas formas, es:

FARPROC GetProcAddress(HMODULE libreria, char* nombreFuncion)

que recibe como primer parámetro el valor devuelto por LoadLibrary, como segundo una cadena con el nombre de la función que quieres obtener, y devuelve un puntero a esa función.
Es problema tuyo saber los parámetros de esa función y el tipo devuelto. Windows simplemente te devuelve un puntero, y tú debes encargarte de utilizarlo convenientemente. Por eso es interesante tener el .h.

De todas formas posiblemente el compilador tenga un ejecutable aparte con el que puedas obtener una librería que añadas a tu proyecto y no tengas que hacer todo esto... eso sí, seguirás necesitando el .h

Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar