Condividi tramite


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 ottenere informazioni estese sull'errore, chiamare GetLastError.

Osservazioni

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 le 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 del pannello di controllo Colors 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 ancorati. Le applicazioni che usano questa funzionalità possono controllare il profilo hardware corrente all'avvio e aggiornare le impostazioni di conseguenza.

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 versione 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 del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winbase.h (include Windows.h)
libreria Advapi32.lib
dll Advapi32.dll
set di API ext-ms-win-advapi32-hwprof-l1-1-0 (introdotto in Windows 10, versione 10.0.10240)

Vedere anche

DBT_CONFIGCHANGED

HW_PROFILE_INFO

funzioni di informazioni di sistema