Ich möchte MessageBox() Funktion auf folgende Weise aufrufen:
Wie MessageBox mit GetProcAddress Funktion aufrufen?
1). Laden benötigte Bibliothek
2). Holen Sie sich die Funktion Adresse
3). Nennen Sie es
Also, für ein solches Ziel, wie ich verstehe, sollte ich einen neuen Typ mit allen Arten von Argumenten in MessageBox-Funktion definieren.
Es kehrt INT zurück und akzeptiert: HWND, LPCSTR, LPCSTR, UNIT.
So angemeldet ich neue Art:
typedef int(__stdcall *msgbox)(HWND, LPCSTR, LPCSTR, UINT);
Ich habe Probleme mit einer solchen Funktion aufrufen. Funktioniert das für alle Funktionen oder nur für exportierte?
Wie kann ich MessageBox genau so aufrufen?
Voll Code:
#include <iostream>
#include <windows.h>
using namespace std;
typedef int(__stdcall *msgbox)(HWND, LPCSTR, LPCSTR, UINT);
int main(void)
{
HINSTANCE__ *hModule = LoadLibrary(L"\\Windows\\System32\\User32.dll");
msgbox *me = 0;
if(hModule != 0)
{
me = (msgbox*)GetProcAddress(hModule, "MessageBox");
}
return 0;
}
Danke,
Mit freundlichen Grüßen!
Vielen Dank für so einen guten Rat! –
Weißt du nicht, wie man nicht exportierte Funktionen in DLL aufruft? Vielen Dank! –
@ user1131997 Ich glaube nicht, dass es eine Möglichkeit gibt, das zu tun – Praetorian