Hy,<bR>
ich hab ein kleines Problem.<bR>
Ich wollte in mein Projekt eine DLL einladen<bR>
uhnd hah mich mal bei google Schlau gemacht.<bR>
Nachdem ich ein funktionierendes Beispiel<br>
abgeändert habging es nciht mehr :-(<br>
<bR>
<pre>
void __fastcall TfrmMainForm::btnDll1Fnct1Click(TObject *Sender)
{
typedef VOID (*DLL1PROC1)(LPTSTR);
HINSTANCE hinstLib;
DLL1PROC1 Dll1Proc1Add;
// Hole das Handle der DLL
hinstLib = LoadLibrary("Dll1.DLL");
// Gibt es ein DLL-Handle, hole die Adresse der Funktion
if (hinstLib != NULL)
{
Dll1Proc1Add = (DLL1PROC1) GetProcAddress(hinstLib, "Dll1Fnct1");
Dll1Proc1Add("HGallo");
// DLL freigeben
if (FreeLibrary(hinstLib) == true)
{
//ShowMessage("Hallo");
}
}
}
//---------------------------------------------------------------------------
</pre>
Nehme ich allerdings den Komentar bei ShowMessage weg<br>
gehts es wieder. Die dll tut garnichts.<br>
Quelltext der dll:<bR>
<pre>
VOID __stdcall Dll1Fnct1(LPTSTR lpszMsg)
{
}
//---------------------------------------------------------------------------
bzw header:
extern "C" __declspec(dllexport) VOID __stdcall Dll1Fnct1(LPTSTR lpszMsg);
</pre>
Ich hoffe mir kann einer von euch helfen.<bR>
<br>
<b>mfg.: </b> Andre´
ich hab ein kleines Problem.<bR>
Ich wollte in mein Projekt eine DLL einladen<bR>
uhnd hah mich mal bei google Schlau gemacht.<bR>
Nachdem ich ein funktionierendes Beispiel<br>
abgeändert habging es nciht mehr :-(<br>
<bR>
<pre>
void __fastcall TfrmMainForm::btnDll1Fnct1Click(TObject *Sender)
{
typedef VOID (*DLL1PROC1)(LPTSTR);
HINSTANCE hinstLib;
DLL1PROC1 Dll1Proc1Add;
// Hole das Handle der DLL
hinstLib = LoadLibrary("Dll1.DLL");
// Gibt es ein DLL-Handle, hole die Adresse der Funktion
if (hinstLib != NULL)
{
Dll1Proc1Add = (DLL1PROC1) GetProcAddress(hinstLib, "Dll1Fnct1");
Dll1Proc1Add("HGallo");
// DLL freigeben
if (FreeLibrary(hinstLib) == true)
{
//ShowMessage("Hallo");
}
}
}
//---------------------------------------------------------------------------
</pre>
Nehme ich allerdings den Komentar bei ShowMessage weg<br>
gehts es wieder. Die dll tut garnichts.<br>
Quelltext der dll:<bR>
<pre>
VOID __stdcall Dll1Fnct1(LPTSTR lpszMsg)
{
}
//---------------------------------------------------------------------------
bzw header:
extern "C" __declspec(dllexport) VOID __stdcall Dll1Fnct1(LPTSTR lpszMsg);
</pre>
Ich hoffe mir kann einer von euch helfen.<bR>
<br>
<b>mfg.: </b> Andre´
Comment