Compartir a través de


Función GetCurrentHwProfileA (winbase.h)

Recupera información sobre el perfil de hardware actual del equipo local.

Sintaxis

BOOL GetCurrentHwProfileA(
  [out] LPHW_PROFILE_INFOA lpHwProfileInfo
);

Parámetros

[out] lpHwProfileInfo

Puntero a una estructura HW_PROFILE_INFO que recibe información sobre el perfil de hardware actual.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es un valor distinto de cero.

Si se produce un error en la función, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Observaciones

La función GetCurrentHwProfile recupera el nombre para mostrar y la cadena de identificador único global (GUID) del perfil de hardware. La función también recupera el estado de acoplamiento notificado para equipos portátiles con estaciones de acoplamiento.

El sistema genera un GUID para cada perfil de hardware y lo almacena como una cadena en el Registro. Puede usar GetCurrentHwProfile para recuperar la cadena GUID que se usará como subclave del Registro en la clave de configuración de la aplicación en HKEY_CURRENT_USER. Esto le permite almacenar la configuración de cada usuario para cada perfil de hardware. Por ejemplo, la aplicación del panel de control Colors podría usar la subclave para almacenar las preferencias de color de cada usuario para distintos perfiles de hardware, como perfiles para los estados acoplados y no acoplados. Las aplicaciones que usan esta funcionalidad pueden comprobar el perfil de hardware actual cuando se inician y actualizar su configuración en consecuencia.

Las aplicaciones también pueden actualizar su configuración cuando un mensaje de dispositivo del sistema, como DBT_CONFIGCHANGED, indica que el perfil de hardware ha cambiado.

Para compilar una aplicación que use esta función, defina la macro _WIN32_WINNT como 0x0400 o posterior. Para obtener más información, vea Using the Windows Headers.

Ejemplos

#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

El encabezado winbase.h define GetCurrentHwProfile como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de winbase.h (incluya Windows.h)
biblioteca de Advapi32.lib
DLL de Advapi32.dll
conjunto de API de ext-ms-win-advapi32-hwprof-l1-1-0 (introducido en Windows 10, versión 10.0.10240)

Consulte también

DBT_CONFIGCHANGED

HW_PROFILE_INFO

funciones de información del sistema