Funzione ShutdownBlockReasonQuery (winuser.h)
Recupera la stringa motivo impostata dalla funzione ShutdownBlockReasonCreate .
Sintassi
BOOL ShutdownBlockReasonQuery(
[in] HWND hWnd,
[out, optional] LPWSTR pwszBuff,
[in, out] DWORD *pcchBuff
);
Parametri
[in] hWnd
Handle alla finestra principale dell'applicazione.
[out, optional] pwszBuff
Puntatore a un buffer che riceve la stringa motivo. Se questo parametro è NULL, la funzione recupera il numero di caratteri nella stringa motivo.
[in, out] pcchBuff
Puntatore a una variabile che specifica le dimensioni del buffer pwszBuff , in caratteri. Se la funzione ha esito positivo, questa variabile riceve il numero di caratteri copiati nel buffer, incluso il carattere null-terminazione. Se il buffer è troppo piccolo, la variabile riceve le dimensioni del buffer necessarie, in caratteri, non incluso il carattere null-terminazione.
Valore restituito
Se la chiamata ha esito positivo, il valore restituito è diverso da zero.
Se la chiamata ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
Questa funzione può essere chiamata solo dal thread che ha creato la finestra specificata dal parametro hWnd . In caso contrario, la funzione ha esito negativo e l'ultimo codice di errore è ERROR_ACCESS_DENIED.
Esempio
Nell'esempio seguente vengono recuperate le dimensioni del buffer necessarie, alloca la memoria per la stringa motivo, recupera la stringa motivo e viene visualizzata la stringa come output di debug.
#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;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | winuser.h (include Windows.h) |
Libreria | User32.lib |
DLL | User32.dll |