C/Visual C - urgente DLL

 
Vista:

urgente DLL

Publicado por Inocencio (1 intervención) el 04/10/2000 00:00:00
Me gustaría saber cómo crear una dll con el visual C++ y luego realizar una aplicación(un programa en c) en lenguaje C utilizando el Visual C++ 6.0 para llamar a dicha dll.
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:urgente DLL

Publicado por Judit (3 intervenciones) el 05/10/2000 00:00:00
Es un poco complicado pero lo intentaré explicar:
1º)Tienes que tener un definedll.cpp, definedll.h y un dll.def
donde en cada uno de ellos poner (te lo voy a poner en un ejemplo)

dll.cpp
// DefineDll.cpp : Defines the entry point for the DLL application.
//

#include "stdafx.h"

/* BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
return TRUE;
} */

//#include <windows.h>

#include "DefineDll.h"

__declspec ( dllexport )
int Suma2numeros(int a, int b, int c)
{
return(a + b + c);
}


dll.h
__declspec ( dllexport)
int Suma2numeros(int, int, int);

dll.def
EXPORTS
Suma2numeros

Y así al compilar te tendrá que crearse en el directorio de debug un dll.dll

Para utilizarla pon en la aplicación de Visual C++ en la función donde la vas a utilizar lo siguiente:

typedef void (*BRET) (LPSTR);

HINSTANCE plib = NULL;
BRET pfun = NULL;
plib = LoadLibrary ("paht/Definedll.dll");

if (plib == NULL)
{
CString s ("La libreria no se ha encontrado");
AfxMessageBox( s );
}
else
{
pfun = (BRET) GetProcAddress (plib,"Suma2numeros");
if (pfun == NULL)
{
CString s ("No encuentra");
AfxMessageBox( s );
}
else
{
(
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