GetCurrentHwProfileW 函式 (winbase.h)
擷取本機計算機目前硬體配置檔的相關信息。
語法
BOOL GetCurrentHwProfileW(
[out] LPHW_PROFILE_INFOW lpHwProfileInfo
);
參數
[out] lpHwProfileInfo
HW_PROFILE_INFO 結構的指標,可接收目前硬體配置文件的相關信息。
傳回值
如果函式成功,則傳回值是非零值。
如果函式失敗,傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
言論
GetCurrentHwProfile 函式會擷取硬體配置檔的顯示名稱和全域唯一標識碼 (GUID) 字串。 函式也會針對具有停駐站的可攜式計算機擷取回報的停駐狀態。
系統會為每個硬體配置檔產生 GUID,並將其儲存為登錄中的字串。 您可以使用 GetCurrentHwProfile 擷取 GUID 字串,以作為應用程式組態設定機碼下的登錄子機碼,HKEY_CURRENT_USER。 這可讓您為每個硬體配置檔儲存每個用戶的設定。 例如,Colors 控制面板應用程式可以使用子機碼來儲存每個使用者不同硬體配置檔的色彩喜好設定,例如停駐狀態和未停駐狀態的配置檔。 使用此功能的應用程式可以在啟動時檢查目前的硬體配置檔,並據以更新其設定。
當系統裝置訊息,例如 DBT_CONFIGCHANGED時,應用程式也可以更新其設定,指出硬體配置檔已變更。
若要編譯使用此函式的應用程式,請將_WIN32_WINNT巨集定義為0x0400或更新版本。 如需詳細資訊,請參閱使用 Windows 標頭
例子
#include <windows.h>
#include <stdio.h>
#include <tchar.h>
void main(void)
{
HW_PROFILE_INFO HwProfInfo;
if (!GetCurrentHwProfile(&HwProfInfo))
{
_tprintf(TEXT("GetCurrentHwProfile failed with error %lx\n"),
GetLastError());
return;
}
_tprintf(TEXT("DockInfo = %d\n"), HwProfInfo.dwDockInfo);
_tprintf(TEXT("Profile Guid = %s\n"), HwProfInfo.szHwProfileGuid);
_tprintf(TEXT("Friendly Name = %s\n"), HwProfInfo.szHwProfileName);
}
注意
winbase.h 標頭會根據 UNICODE 預處理器常數的定義,將 GetCurrentHwProfile 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | winbase.h (包括 Windows.h) |
連結庫 | Advapi32.lib |
DLL | Advapi32.dll |
API 集 | ext-ms-win-advapi32-hwprof-l1-1-0 (在 Windows 10 版本 10.0.10240 中引進) |