Oppure

Loading
08/10/06 12:19
allora.. eccomi qua in guerra aperta con le dll...
mi potrestespiegare come si crea e come si linka una dll?

mi potreste fare un esempio di una dll che crei una messagebox con scritto ciao e come richiamarla nel codice del mio prog?
grazie mille!:k:
08/10/06 14:28
Rand
leggi qua il tutorial
dotnethell.it/articles/…
aaa
08/10/06 15:01
non ho capito niente...:-|:-|

mi puoi fare un esempio?

mia_dll.cpp
#include <windows.h>

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


e questa dove la metto:
void ciao()
{
MessageBox(0, "Ciao","", MB_OK);
}


mio_programma.cpp
???


:d:d
09/10/06 11:08
risolto da solo... non avevo googlato bene...
forum.html.it/forum/…:k:
09/10/06 17:33
Rand
ok :k:
aaa
09/10/06 19:36
...però non mi riesce! ca**o ca**o ca**o :grr::grr:
ti prego... mi puoi fare un esempio come ti avevo chiesto nel post sopra?.. ti supplico!!!!:d
10/10/06 15:02
Rand
tua dll...
#include <windows.h>

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

//funzione esportata dalla dll come "public"
extern "C" __declspec(dllexport) void Messaggio() {

	MessageBox (NULL, "weeeee" , "io sono la DLL XD", 0 + MB_ICONEXCLAMATION);
}


il prg dove vuoi usare qst dll...
#include <iostream.h>
#include <stdio.h>


typedef void (WINAPI*cfunc)();
cfunc Messaggio();


void main() {
   
	   HINSTANCE hLib=LoadLibrary("Progetto_DLL.DLL");

		//se la DLL nn viene caricata
	   if(hLib==NULL) {

			cout << "DLL NN CARICATA: ERRORE!" << endl;
			return;
	   }

	   Messaggio();

	   FreeLibrary((HMODULE)hLib);

	   system("pause");
}


:k:
aaa
10/10/06 19:22
FreeLibrary((HMODULE)hLib);


mi puoi gentilmente spiegare k significa questo?;)

cmq mi dice:
[Linker error] undefined reference to `Messaggio()'

praticamente non trova la funzione...

grazie mille... anche della tua pazienza...
:k:
Ultima modifica effettuata da 10/10/06 19:31