O script do PowerShell não assistido do Windows 10 não será executado

0

No momento, estou tentando melhorar a instalação atual do WDS do Windows 10 que usamos basicamente para todas as escolas para as quais trabalhamos.

A instalação precisa conter alguns aplicativos e algumas alterações básicas aqui e ali. Eu também preciso disso para ingressar em um domínio e renomear o computador, independentemente do nome de domínio e sem inserir credenciais. Eu uso scripts do PowerShell para isso Eu costumava usar um script para isso, ele usava o comando PowerShell do computador de adição e renomeia o computador usando -NewName e ele reinicializaria. Isso funciona bem, é que de vez em quando ele gosta de lançar erros, então a solução para isso é separar o renomear e unir.

Agora, o problema que estou tendo é que ele irá se juntar ao domínio bem (ou mudar o nome dependendo da ordem), mas não executará o script renomear após a reinicialização.

Não está jogando erros e não há nada para ser visto no logbook, apenas não está executando o script ...

Eu tenho trabalhado nisso há algum tempo e agora eu sinceramente não sei onde procurar ou o que tentar ...

Estou executando o x64 corporativo do Windows 10 x64

<SynchronousCommand wcm:action="
<CommandLine>Powershell.exe -ExecutionPolicy unrestricted -File c:\System\RenameComputer.ps1 </CommandLine>
<Description>Change computername</Description>
<Order>10</Order>
<RequiresUserInput>true</RequiresUserInput>
</SynchronousCommand>
<SynchronousCommand wcm:action="add">
<CommandLine>Powershell.exe -ExecutionPolicy unrestricted -File c:\System\JoinDomain.ps1 </CommandLine>
<Description>Join computer into domain</Description>
<Order>9</Order>
<RequiresUserInput>true</RequiresUserInput>
</SynchronousCommand>
</FirstLogonCommands>

Scripts em execução

Get-WmiObject Win32_NetworkAdapterConfiguration | ForEach-Object { IF($_.IPEnabled -eq "True" -and $_.DNSDomain.Length  -gt  1)  { 
 $Domain = $_.DNSDomain } }
$DomainPass = ConvertTo-SecureString “nope” -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential ("$Domain\nope" , $DomainPass) 
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null
$name = [Microsoft.VisualBasic.Interaction]::InputBox("Enter Desired Computer Name ")
$name = $name.ToUpper()
Write-Output $name $Domain $Cred
Rename-Computer -NewName $name -DomainCredential $Cred
Read-Host  "press enter to continue"
Restart-Computer -Force


Get-WmiObject Win32_NetworkAdapterConfiguration | ForEach-Object { IF($_.IPEnabled -eq "True" -and $_.DNSDomain.Length  -gt  1)  { 
$Domain = $_.DNSDomain } }
$DomainPass = ConvertTo-SecureString “nope” -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential ("$Domain\nope" , $DomainPass) 
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') |  Out-Null
Add-Computer -DomainName $Domain -Credential $Cred 
Read-Host  "press enter to continue"
Restart-Computer -Force
    
por legopc 06.03.2017 / 16:11

0 respostas