Funzione GetCurrentHwProfileA (winbase.h)
Recupera informazioni sul profilo hardware corrente per il computer locale.
Sintassi
BOOL GetCurrentHwProfileA(
[out] LPHW_PROFILE_INFOA lpHwProfileInfo
);
Parametri
[out] lpHwProfileInfo
Puntatore a una struttura HW_PROFILE_INFO che riceve informazioni sul profilo hardware corrente.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
La funzione GetCurrentHwProfile recupera il nome visualizzato e la stringa GUID (Global Unique Identifier) per il profilo hardware. La funzione recupera anche lo stato di ancoraggio segnalato per i computer portatili con stazioni di ancoraggio.
Il sistema genera un GUID per ogni profilo hardware e lo archivia come stringa nel Registro di sistema. È possibile usare GetCurrentHwProfile per recuperare la stringa GUID da usare come sottochiave del Registro di sistema nella chiave delle impostazioni di configurazione dell'applicazione in HKEY_CURRENT_USER. In questo modo è possibile archiviare le impostazioni di ogni utente per ogni profilo hardware. Ad esempio, l'applicazione pannello di controllo Colori può usare la sottochiave per archiviare le preferenze di colore di ogni utente per profili hardware diversi, ad esempio i profili per gli stati ancorati e non scaricati. Le applicazioni che usano questa funzionalità possono controllare il profilo hardware corrente all'avvio e aggiornare di conseguenza le impostazioni.
Le applicazioni possono anche aggiornare le impostazioni quando un messaggio del dispositivo di sistema, ad esempio DBT_CONFIGCHANGED, indica che il profilo hardware è stato modificato.
Per compilare un'applicazione che usa questa funzione, definire la macro _WIN32_WINNT come 0x0400 o successiva. Per altre informazioni, vedere Uso delle intestazioni di Windows.
Esempi
#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);
}
Nota
L'intestazione winbase.h definisce GetCurrentHwProfile come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winbase.h (include Windows.h) |
Libreria | Advapi32.lib |
DLL | Advapi32.dll |
Set di API | ext-ms-win-advapi32-hwprof-l1-1-0 (introdotta in Windows 10, versione 10.0.10240) |