Freigeben über


GetCurrentHwProfileA-Funktion (winbase.h)

Ruft Informationen zum aktuellen Hardwareprofil für den lokalen Computer ab.

Syntax

BOOL GetCurrentHwProfileA(
  [out] LPHW_PROFILE_INFOA lpHwProfileInfo
);

Parameter

[out] lpHwProfileInfo

Ein Zeiger auf eine HW_PROFILE_INFO Struktur, die Informationen zum aktuellen Hardwareprofil empfängt.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich Null.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Die GetCurrentHwProfile--Funktion ruft den Anzeigenamen und die GUID-Zeichenfolge (Globally Unique Identifier) für das Hardwareprofil ab. Die Funktion ruft auch den gemeldeten Docking-Zustand für tragbare Computer mit Dockingstationen ab.

Das System generiert eine GUID für jedes Hardwareprofil und speichert sie als Zeichenfolge in der Registrierung. Sie können GetCurrentHwProfile- verwenden, um die GUID-Zeichenfolge abzurufen, die als Registrierungsunterschlüssel unter dem Konfigurationseinstellungenschlüssel Ihrer Anwendung in HKEY_CURRENT_USERverwendet werden soll. Auf diese Weise können Sie die Einstellungen der einzelnen Benutzer für jedes Hardwareprofil speichern. Die Systemsteuerungsanwendung "Farben" kann z. B. den Unterschlüssel verwenden, um die Farbeinstellungen jedes Benutzers für unterschiedliche Hardwareprofile zu speichern, z. B. Profile für die angedockten und abgedockten Zustände. Anwendungen, die diese Funktionalität verwenden, können das aktuelle Hardwareprofil beim Start überprüfen und ihre Einstellungen entsprechend aktualisieren.

Anwendungen können ihre Einstellungen auch aktualisieren, wenn eine Systemgerätemeldung, z. B. DBT_CONFIGCHANGED, angibt, dass sich das Hardwareprofil geändert hat.

Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie das _WIN32_WINNT Makro als 0x0400 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.

Beispiele

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

Anmerkung

Der winbase.h-Header definiert GetCurrentHwProfile als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- winbase.h (enthalten Windows.h)
Library Advapi32.lib
DLL- Advapi32.dll
API-Satz ext-ms-win-advapi32-hwprof-l1-1-0 (eingeführt in Windows 10, Version 10.0.10240)

Siehe auch

DBT_CONFIGCHANGED

HW_PROFILE_INFO

Systeminformationsfunktionen