WNetDisconnectDialog funktioniert nicht
-
Ich habe das Problem, dass WNetDisconnectDialog nicht funktioniert. Es erscheint kein Dialog, der Rückgabewert der Funktion ist 0.
Hier mein Code:
#include <Windows.h> #include <Winnetwk.h> #pragma comment(lib,"Mpr.lib") int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow) { WNetDisconnectDialog(GetForegroundWindow(),RESOURCETYPE_DISK); }Dann habe ich es mit dynamischen Laden versucht:
#include <Windows.h> //#include <Winnetwk.h> //#pragma comment(lib,"Mpr.lib") typedef DWORD (*WNetDisconnectDialogDT) (HWND hwnd,DWORD dwType); int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow) { HMODULE Lib=LoadLibrary(L"Mpr.dll"); WNetDisconnectDialogDT WNetDisconnectDialogM=(WNetDisconnectDialogDT)GetProcAddress(Lib,"WNetDisconnectDialog"); WNetDisconnectDialogM(GetForegroundWindow(),RESOURCETYPE_DISK); FreeLibrary(Lib); //WNetDisconnectDialog(GetForegroundWindow(),RESOURCETYPE_DISK); }Dann tritt beim Debuggen der Fehler "Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention."* auf. Wenn ich zweimal mit Weiter bestätige erscheint der Dialog dann.
Wenn ich rundll32.exe Mpr.dll,WNetDisconnectDialog aufrufe, erscheint der Dialog auch nicht. Genauso wenig wenn ich die Funktionsdefinition beim dynamischen Laden von *typedef DWORD (WNetDisconnectDialogDT) (HWND hwnd,DWORD dwType); in *typedef DWORD (WINAPI WNetDisconnectDialogDT) (HWND hwnd,DWORD dwType); ändere. Dann erscheint der Dialog nämlich wieder gar nicht.
Ich benutze Visual C++ 2008 Express Edition unter Windows 7 Service Pack 1.
Was kann ich tun, damit ein Dialog angezeigt wird?
norbertwill
-
Es funktioniert jetzt, die Anwendung, die WNetDisconnectDialog aufruft, muss ein Fenster haben oder auf anderem Wege weiterlaufen, sonst wird der Dialog nicht weiter angezeigt.
norbertwill