ShutdownBlockReasonQuery 함수(winuser.h)
ShutdownBlockReasonCreate 함수에서 설정한 이유 문자열을 검색합니다.
구문
BOOL ShutdownBlockReasonQuery(
[in] HWND hWnd,
[out, optional] LPWSTR pwszBuff,
[in, out] DWORD *pcchBuff
);
매개 변수
[in] hWnd
애플리케이션의 기본 창에 대한 핸들입니다.
[out, optional] pwszBuff
이유 문자열을 수신하는 버퍼에 대한 포인터입니다. 이 매개 변수가 NULL이면 함수는 이유 문자열의 문자 수를 검색합니다.
[in, out] pcchBuff
pwszBuff 버퍼의 크기를 문자 단위로 지정하는 변수에 대한 포인터입니다. 함수가 성공하면 이 변수는 null 종료 문자를 포함하여 버퍼에 복사된 문자 수를 받습니다. 버퍼가 너무 작으면 변수는 null 종료 문자를 포함하지 않고 필요한 버퍼 크기를 문자 단위로 받습니다.
반환 값
호출이 성공하면 반환 값은 0이 아닌 값입니다.
호출이 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
이 함수는 hWnd 매개 변수로 지정된 창을 만든 스레드에서만 호출할 수 있습니다. 그렇지 않으면 함수가 실패하고 마지막 오류 코드가 ERROR_ACCESS_DENIED.
예제
다음 예제에서는 필요한 버퍼 크기를 검색하고, 이유 문자열에 대한 메모리를 할당하고, 이유 문자열을 검색하고, 문자열을 디버그 출력으로 표시합니다.
#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;
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | winuser.h(Windows.h 포함) |
라이브러리 | User32.lib |
DLL | User32.dll |