Fungsi ShutdownBlockReasonQuery (winuser.h)
Mengambil string alasan yang ditetapkan oleh fungsi ShutdownBlockReasonCreate .
Sintaks
BOOL ShutdownBlockReasonQuery(
[in] HWND hWnd,
[out, optional] LPWSTR pwszBuff,
[in, out] DWORD *pcchBuff
);
Parameter
[in] hWnd
Handel ke jendela utama aplikasi.
[out, optional] pwszBuff
Penunjuk ke buffer yang menerima string alasan. Jika parameter ini NULL, fungsi mengambil jumlah karakter dalam string alasan.
[in, out] pcchBuff
Penunjuk ke variabel yang menentukan ukuran buffer pwszBuff , dalam karakter. Jika fungsi berhasil, variabel ini menerima jumlah karakter yang disalin ke dalam buffer, termasuk karakter null-terminating. Jika buffer terlalu kecil, variabel menerima ukuran buffer yang diperlukan, dalam karakter, tidak termasuk karakter null-terminating.
Nilai kembali
Jika panggilan berhasil, nilai yang dikembalikan bukan nol.
Jika panggilan gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.
Keterangan
Fungsi ini hanya dapat dipanggil dari utas yang membuat jendela yang ditentukan oleh parameter hWnd . Jika tidak, fungsi gagal dan kode kesalahan terakhir adalah ERROR_ACCESS_DENIED.
Contoh
Contoh berikut mengambil ukuran buffer yang diperlukan, mengalokasikan memori untuk string alasan, mengambil string alasan, dan menampilkan string sebagai output 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;
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2008 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | winuser.h (sertakan Windows.h) |
Pustaka | User32.lib |
DLL | User32.dll |