Ciao Ragazzi,
So che questo argomento è stato trattato da LeleFT nel 2004.
ho letto tutto, ho provato a ripercorrere alcuni suoi passi, ma mi sono arenato.
Al dunque..
WInXP SP3
Visual C++ Express Edition
Voglio creare semplicissima DLL e richiamarla da un altrettanto banale programma
Win 32 console APP. Il tutto sempre i VC++Exp Ed
I miei passi sono stati i seguenti:
Creato progetto Console application ( no DLL perchè il flag mi appare in grigetto e non posso editarlo... Qualcuno sa dirmi perchè io non posso?)
Copiato da post precedente il seguente programma:
[Come si fa a creare le finestrelle dove mettere il codice?]
codice:
/* mydll.dll */
#include <windows.h>
#include <stdafx.h>
/* ENTRY-POINT */
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved )
{
return TRUE;
}
/* Funzione Somma */
extern "C" __declspec(dllexport) int Somma(int a, int b)
{
return a+b;
}
Eseguo il build impostando il configuration Type: Dynamic Library
Nessun errore
Copio anche il programma che utilizza la DLL
codice:
// UsoLibreria.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "windows.h"
extern "C" __declspec(dllimport) int Somma(int a, int b);
int main()
{
printf("%d\n", Somma(10, 5) );
return 0;
}
Nel progetto imposto : Proprietà -> Linker->General-> Additionl Library-> ... Path della DLL creata precedentemente.
Eseguo Build che restituisce errore:
"error LNK2019: unresolved external symbol __imp__Somma referenced in function _main"
Cosa mi manca? Scusate se è una banalità, ma non so cosa fare