ShutdownBlockReasonQuery-Funktion (winuser.h)
Ruft die durch die ShutdownBlockReasonCreate-Funktion festgelegte Grundzeichenfolge ab.
Syntax
BOOL ShutdownBlockReasonQuery(
[in] HWND hWnd,
[out, optional] LPWSTR pwszBuff,
[in, out] DWORD *pcchBuff
);
Parameter
[in] hWnd
Ein Handle für das Standard Fenster der Anwendung.
[out, optional] pwszBuff
Ein Zeiger auf einen Puffer, der die Ursachenzeichenfolge empfängt. Wenn dieser Parameter NULL ist, ruft die Funktion die Anzahl der Zeichen in der Grundzeichenfolge ab.
[in, out] pcchBuff
Ein Zeiger auf eine Variable, die die Größe des pwszBuff-Puffers in Zeichen angibt. Wenn die Funktion erfolgreich ist, empfängt diese Variable die Anzahl von Zeichen, die in den Puffer kopiert wurden, einschließlich des NULL-Endzeichens. Wenn der Puffer zu klein ist, empfängt die Variable die erforderliche Puffergröße in Zeichen, ohne das Nullabschlusszeichen.
Rückgabewert
Wenn der Aufruf erfolgreich ist, ist der Rückgabewert ungleich null.
Wenn der Aufruf fehlschlägt, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Diese Funktion kann nur über den Thread aufgerufen werden, der das durch den hWnd-Parameter angegebene Fenster erstellt hat. Andernfalls schlägt die Funktion fehl, und der letzte Fehlercode wird ERROR_ACCESS_DENIED.
Beispiele
Im folgenden Beispiel wird die erforderliche Puffergröße abgerufen, Arbeitsspeicher für die Ursachenzeichenfolge zugeordnet, die Ursachenzeichenfolge abgerufen und die Zeichenfolge als Debugausgabe angezeigt.
#include <windows.h>
#pragma comment(lib, "User32.lib")
HWND hWnd;
BOOL DisplayShutdownBlockReason()
{
DWORD cch=0;
if (ShutdownBlockReasonQuery(hWnd, NULL, &cch))
{
WCHAR *pch = (WCHAR *)LocalAlloc(LMEM_FIXED, cch * sizeof(*pch));
if (NULL != pch)
{
if (ShutdownBlockReasonQuery(hWnd, pch, &cch))
{
OutputDebugStringW(L"Shutdown block reason: ");
OutputDebugStringW(pch);
OutputDebugStringW(L"\n");
}
LocalFree(pch);
return TRUE;
}
}
return FALSE;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | winuser.h (windows.h einschließen) |
Bibliothek | User32.lib |
DLL | User32.dll |