Ich frage mich, wenn einige zeigen können, warum die letzte Zeile im Skript nicht über meine geplante Aufgabe ausgeführt wird, wird die Aufgabe bei der Anmeldung und als Systemkonto ausgeführt. die Linie läuft, wenn ich es manuell ausführenInvoke-Element nicht von geplanten Task ausgeführt
ich auch start-process
versucht haben, statt invoke-item
$username = Get-WmiObject -class Win32_ComputerSystem | select-object -ExpandProperty username
$username = $username.replace(Domainname\', '')
$FaxClientService = 'printclient'
$FaxClientexec = 'C:\program files (x86)\fax\client\bin\printclient.exe'
$WantFile = "c:\users\'+$username+'\appdata\roaming\fax\client\PrintToFaxUserSettings.xml"
$FileExists = Test-Path $WantFile
If ($FileExists -eq $true)
{
exit
}
Else
{
# Insert username into XML
$xml = new-object XML
$xml.PreserveWhiteSpace = $true
$xml.load("C:\temp\faxprinter\PrintToFaxUserSettings.xml")
$xml.usersettings.username = $username
$xml.PreserveWhiteSpace = $true
$xml.save("C:\temp\faxprinter\PrintToFaxUserSettings.xml")
Start-Sleep -s 10
$ErrorActionPreference = "SilentlyContinue"
Stop-Process -processname $FaxClientService -Force
$ErrorActionPreference = "Stop"
New-Item c:\users\$username\appdata\roaming\fax -type directory
New-Item c:\users\$username\appdata\roaming\fax\Client -type directory
$source = 'c:\temp\faxprinter\PrintToFaxUserSettings.xml'
$dest = 'c:\users\' + $username + '\appdata\roaming\fax\client\PrintToFaxUserSettings.xml'
Copy-Item -Force $source $dest
Start-Sleep -s 30
Invoke-Item $FaxClientexec
}
Nur eine Vermutung, aber versuchen Sie, Anmeldeinformationen in Ihrem 'Invoke-Item' Befehl zu übergeben. https://technet.microsoft.com/en-us/library/hh849794.aspx –