Função RegConnectRegistryW (winreg.h)
Estabelece uma conexão com uma chave predefinida do Registro em outro computador.
Sintaxe
LSTATUS RegConnectRegistryW(
[in, optional] LPCWSTR lpMachineName,
[in] HKEY hKey,
[out] PHKEY phkResult
);
Parâmetros
[in, optional] lpMachineName
O nome do computador remoto. A cadeia de caracteres tem o seguinte formulário:
\\ nome do computador
O chamador deve ter acesso ao computador remoto ou a função falha.
Se esse parâmetro for NULL, o nome do computador local será usado.
[in] hKey
Um identificador predefinido do Registro. Esse parâmetro pode ser uma das seguintes chaves predefinidas no computador remoto.
HKEY_LOCAL_MACHINEHKEY_PERFORMANCE_DATAHKEY_USERS
[out] phkResult
Um ponteiro para uma variável que recebe um identificador de chave que identifica o identificador predefinido no computador remoto.
Valor de retorno
Se a função for bem-sucedida, o valor retornado será ERROR_SUCCESS.
Se a função falhar, o valor retornado será um código de erro diferente de zero definido em Winerror.h. Você pode usar a função
Observações
RegConnectRegistry requer que o serviço registro remoto esteja em execução no computador remoto. Por padrão, esse serviço é configurado para ser iniciado manualmente. Para configurar o serviço de Registro Remoto para iniciar automaticamente, execute Services.msc e altere o Tipo de Inicialização do serviço para Automático.
Windows Server 2003 e Windows XP/2000: o serviço registro remoto é configurado para iniciar automaticamente por padrão.
Quando um identificador retornado por RegConnectRegistry não é mais necessário, ele deve ser fechado chamando RegCloseKey.
Se o computador estiver associado a um grupo de trabalho e a política "Forçar logons de rede usando contas locais para autenticar como Convidado" estiver habilitada, a função falhará. Observe que essa política será habilitada por padrão se o computador estiver ingressado em um grupo de trabalho.
Se o usuário atual não tiver acesso adequado ao computador remoto, a chamada para RegConnectRegistry falhar. Para se conectar a um registro remoto, chame logonUser com LOGON32_LOGON_NEW_CREDENTIALS e ImpersonateLoggedOnUser antes de chamar RegConnectRegistry.
Windows 2000: Uma solução alternativa possível é estabelecer uma sessão para um compartilhamento administrativo, como IPC$ usando um conjunto diferente de credenciais. Para especificar credenciais diferentes das do usuário atual, use a função WNetAddConnection2 para se conectar ao compartilhamento. Quando terminar de acessar o registro, cancele a conexão.
Windows XP Home Edition: Você não pode usar essa função para se conectar a um computador remoto executando o Windows XP Home Edition. Essa função funciona com o nome do computador local, mesmo que esteja executando o Windows XP Home Edition, pois isso ignora a camada de autenticação.
Nota
O cabeçalho winreg.h define RegConnectRegistry 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 | winreg.h (inclua Windows.h) |
biblioteca | Advapi32.lib |
de DLL |
Advapi32.dll |