dynamische DLL mit Parametern
-
Ich möchte in meiner Anwendung eine DLL dynamisch laden.
In der dll ist eine Funktion die die eigene IP scannen soll:__declspec(dllexport) void SetStringx(CString& str, int& port, int& port2) { AfxMessageBox(str); CString updatema; while(port <= port2,port++){ updatema=str; CSocket s; VERIFY( s.Create()); if( ! s.Connect(updatema, port)){ AfxMessageBox("Port ist geschlossen !",port); } else { AfxMessageBox("Port ist offen !",port); } s.Close(); if(port==port2){ break; } } }
Ich verstehe das Beispiel im Forum aber nicht so ganz.
Wie kann ich denn nun den Aufruf in der exe machen, wenn ich
die IP und portvon/portbis mitgeben will ?In der exe bisher:
CString ip ="127.0.0.1"; int p1=135; int p2=139; FARPROC pFunc; HMODULE hMod = LoadLibrary("c:\\selfscan.dll"); pFunc = GetProcAddress(hMod, "SetStringx");//hier klappt nichts...SetStringx(..)? if (pFunc) (*pFunc)();//oder muss ich hier die variuablen mitgeben ?? else MessageBox("dll nicht geladen"); FreeLibrary(hMod);
-
Über google findest du tausende Beispiele.
-
Ich bin schon am googeln. Das Problem ist auch weniger die dll,
denn ohne Parameter geht es, sondern mehr, wie ich dem Aufruf
die zu nutzenden Variablen mitgebe.Wenn du ein Beispiel parat hast, würde ein Link reichen und
ich versuche mich daran. Habe leider selbst nicht wirklich
etwas verständliches gefunden.
-
-
Danke