Função GetCurrentHwProfileA (winbase.h)
Recupera informações sobre o perfil de hardware atual do computador local.
Sintaxe
BOOL GetCurrentHwProfileA(
[out] LPHW_PROFILE_INFOA lpHwProfileInfo
);
Parâmetros
[out] lpHwProfileInfo
Um ponteiro para uma estrutura HW_PROFILE_INFO que recebe informações sobre o perfil de hardware atual.
Valor de retorno
Se a função for bem-sucedida, o valor retornado será um valor diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.
Observações
A função GetCurrentHwProfile recupera o nome de exibição e a cadeia de caracteres GUID (identificador global exclusivo) para o perfil de hardware. A função também recupera o estado de encaixe relatado para computadores portáteis com estações de encaixe.
O sistema gera um GUID para cada perfil de hardware e o armazena como uma cadeia de caracteres no registro. Você pode usar GetCurrentHwProfile para recuperar a cadeia de caracteres GUID a ser usada como uma subchave do Registro na chave de configuração do aplicativo no HKEY_CURRENT_USER. Isso permite que você armazene as configurações de cada usuário para cada perfil de hardware. Por exemplo, o aplicativo painel de controle Cores pode usar a subchave para armazenar as preferências de cores de cada usuário para diferentes perfis de hardware, como perfis para os estados encaixados e desencaixados. Os aplicativos que usam essa funcionalidade podem verificar o perfil de hardware atual ao iniciar e atualizar suas configurações adequadamente.
Os aplicativos também podem atualizar suas configurações quando uma mensagem de dispositivo do sistema, como DBT_CONFIGCHANGED, indica que o perfil de hardware foi alterado.
Para compilar um aplicativo que usa essa função, defina a macro _WIN32_WINNT como 0x0400 ou posterior. Para obter mais informações, consulte Usando os cabeçalhos do Windows.
Exemplos
#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
O cabeçalho winbase.h define GetCurrentHwProfile como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | winbase.h (inclua Windows.h) |
biblioteca | Advapi32.lib |
de DLL |
Advapi32.dll |
conjunto de API | ext-ms-win-advapi32-hwprof-l1-1-0 (introduzido no Windows 10, versão 10.0.10240) |