Einzelnen Beitrag anzeigen

Lyan

Registriert seit: 5. Aug 2011
188 Beiträge
 
#4

AW: Call DLL from Memory Error

  Alt 24. Dez 2014, 12:21
Ja genauer gesagt habe ich eine selbstgeschriebene DLL, die mit winsock (ws2_32.dll) einen Speedtest durchführt.
Meine DLL funktioniert einwandfrei wenn ich sie normal mit Loadlibrary lade. Sie crasht jedoch immer dann wenn ich sie aus dem Speicher lade und versuche eine Funktion aus der ws2_32.dll aufzurufen.
Mein Programm, das die DLL lädt hat ws2_32 schon geladen, d.h. meine DLL die aus dem Speicher geladen wird, holt sich das Handle einfach via GetModuleHandle().

Habe mir aus meinem Mainprogramm die Adresse von socket() ausgeben lassen, welche mit der Adresse von msocket() (dynamisch gecallt) aus meiner DLL übereinstimmt. Beim Versuch msocket() aus der dll zu callen crash, wie schon gesagt.

Ich denke den Code brauch ich nicht zu posten, da ich ihn komplett posten müsste (sind zu viele Macros etc, um codeparts zu posten) was wiederum eine Zumutung wäre zu verlanden das alles durchzulesen^^

Hoffe einfach auf jemanden der ein ähnliches Problem hatte oder sich vorstellen kann woran es liegen könnte.

Geändert von Lyan (24. Dez 2014 um 12:28 Uhr)
  Mit Zitat antworten Zitat