GetCurrentHwProfileA, fonction (winbase.h)

Récupère des informations sur le profil matériel actuel pour l’ordinateur local.

Syntaxe

BOOL GetCurrentHwProfileA(
  [out] LPHW_PROFILE_INFOA lpHwProfileInfo
);

Paramètres

[out] lpHwProfileInfo

Pointeur vers une structure HW_PROFILE_INFO qui reçoit des informations sur le profil matériel actuel.

Valeur retournée

Si la fonction réussit, la valeur de retour est une valeur différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

La fonction GetCurrentHwProfile récupère le nom d’affichage et la chaîne d’identificateur global unique (GUID) pour le profil matériel. La fonction récupère également l’état d’ancrage signalé pour les ordinateurs portables dotés de stations d’accueil.

Le système génère un GUID pour chaque profil matériel et le stocke sous forme de chaîne dans le Registre. Vous pouvez utiliser GetCurrentHwProfile pour récupérer la chaîne GUID à utiliser comme sous-clé de Registre sous la clé des paramètres de configuration de votre application dans HKEY_CURRENT_USER. Cela vous permet de stocker les paramètres de chaque utilisateur pour chaque profil matériel. Par exemple, l’application du panneau de configuration Couleurs peut utiliser la sous-clé pour stocker les préférences de couleur de chaque utilisateur pour différents profils matériels, tels que les profils pour les états ancrés et non ancrés. Les applications qui utilisent cette fonctionnalité peuvent case activée le profil matériel actuel au démarrage et mettre à jour leurs paramètres en conséquence.

Les applications peuvent également mettre à jour leurs paramètres lorsqu’un message d’appareil système, tel que DBT_CONFIGCHANGED, indique que le profil matériel a changé.

Pour compiler une application qui utilise cette fonction, définissez la macro _WIN32_WINNT comme 0x0400 ou version ultérieure. Pour plus d’informations, consultez Utilisation des en-têtes Windows.

Exemples

#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);
}

Notes

L’en-tête winbase.h définit GetCurrentHwProfile en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winbase.h (inclure Windows.h)
Bibliothèque Advapi32.lib
DLL Advapi32.dll
Ensemble d’API ext-ms-win-advapi32-hwprof-l1-1-0 (introduit dans Windows 10, version 10.0.10240)

Voir aussi

DBT_CONFIGCHANGED

HW_PROFILE_INFO

Fonctions d’information système