Folgender Code verursacht sofortigen Absturz des Programms...
-
typedef bool (* DLLFUNCTION1PROC)(LPDWORD dwFlag, DWORD dwReserved); . . . . . HMODULE hDLL; DLLFUNCTION1PROC dllf = NULL; hDLL= LoadLibrary("WININET.DLL"); if (hMyLib == NULL) { return false; } dllf = (DLLFUNCTION1PROC)GetProcAddress(hDLL, TEXT("InternetGetConnectedState")); if (dllf == NULL) { return false; } DWORD fff; if((dllf(&fff, NULL))) Beep(122,222); // Dieses Beep wird ausgeführt und die Funktion läuft wie sie soll. //Wieso verdammt sturzt der ab? FreeLibrary(hDLL);
-
STDCALL / WINAPI vergessen. glaub es muss hier hin:
typedef bool (WINAPI * DLLFUNCTION1PROC)(LPDWORD dwFlag, DWORD dwReserved);
-
Außerdem gehört da 'BOOL' hin und nicht 'bool'.
-
Ist bool nicht gleich BOOL also
typedef bool BOOL; //ist doch so!
-
Nein, momentan BOOL == int
-
Danke Gast.
der WINAPI* musste hin. Das hat das Problem gelöst.
(nett wäre es wenn jmd. erklären könnte WIESO das nötig ist.)
-
http://www.codeproject.com/cpp/calling_conventions_demystified.asp
WINAPI == __stdcall
-
Hi, Danke vielmals. Kaum zu glauben wie viel man über dieses Forum in kürzester Zeit lernen kann. Ich denke hier lerne ich in 1 Std. mehr als in einer Woche in der Schule.
