Esta questão tem uma sobreposição com a programação, mas acho que ela pertence principalmente aqui. Estou construindo um script elaborado no AutoIt que ativa o logon automático para que várias reinicializações autônomas sejam possíveis. Também verifico se o autologon já estava ligado e, em caso afirmativo, não faço nada.
Se não, no entanto, peço uma senha, verifique se a senha é válida por uma chamada para a API LogonUser de advapi.dll e, em seguida, defino as seguintes configurações do registro conforme link
RegWrite('HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon', 'AutoAdminLogon', 'REG_DWORD', 1)
RegWrite('HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon', 'DefaultUserName', 'REG_SZ', $username)
RegWrite('HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon', 'DefaultPassword', 'REG_SZ', $password)
Normalmente, isso funciona bem. No entanto, alguém que trabalha no campo acabou de informar que meu script solicita uma senha em um computador que executa o Windows 7 Professional e que já tinha o logon automático ativado.
Quando verifico o registro, em HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Winlogon, não encontro nenhuma das chaves necessárias, ou seja, AutoAdminLogon, DefaultUserName e DefaultPassword.
Quando executo o netplwiz, isso também indica que 'os usuários devem digitar um nome de usuário e uma senha' para efetuar login; a caixa de seleção está marcada.
Então, o que está acontecendo aqui? Isso é possível? Existe outro mecanismo de autologon por aí? Como funciona e como posso detectá-lo? Infelizmente, esta é apenas uma máquina no campo e não tenho acesso a ela agora. Eu só tenho uma olhada; através do TeamViewer. Qualquer ajuda apreciada.