HKEY_CURRENT_USER
realmente não existe por si. É apenas uma projeção de HKEY_USERS\<SID>
do usuário conectado no momento e é fornecida apenas para sua conveniência de visualização.
Estou tentando limpar uma grande bagunça de unidades de rede mapeadas aleatoriamente. Todas as nossas unidades de rede foram mapeadas por usuário (fazendo com que gwmi win32_mappedlogicaldisk
surja vazio).
Estou tentando acessar remotamente o registro de cada estação de trabalho e listar o conteúdo de HKCU:\Network
, mas quando executo isso:
$Reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("CurrentUser", $computername)
$Reg.GetSubKeyNames()
Eu recebo apenas a seguinte saída:
AppEvents
Console
Control Panel
Environment
Identities
Keyboard Layout
Printers
Software
UNICODE Program Groups
Mais do que algumas subchaves estão faltando. Se eu executar o mesmo comando na minha máquina local, todas as subchaves serão exibidas.
Por que não consigo acessar essas subchaves e como posso resolver isso?
As seções HKCU estão localizadas nos diretórios de perfil do usuário. Eles não fazem parte da seção de registro principal (% SystemRoot% \ System32 \ Config).
Você pode obter uma lista de seções ativas para uma máquina em HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ hivelist.