Invoke-AMTPowerManagement [-ComputerName] <String> [-Port <String>] [-Operation] <String> [-TLS] [-CertificateName <String>] [-Username <String>] [-Password <String>]
[[-Credential] <PSCredential>] [<CommonParameters>]
You only provide the computername from the file but username and password or a PSCredential are missing
this line worked for me:
Invoke-AMTPowerManagement -ComputerName xxxxxxxx -Username xxxxxx -Password xxxxxxx -Operation poweroff
Hi Jan, thanks for your response. The issue I have is that I will need to eventually be able to run a script that will turn on several hundred computers simultaneously. Typing in each PC name one-by-one would take much too long. We need to be able to have a text file with a list of FQDNs that I can then pipe to a command to remotely turn on all those PCs. This is an example I found that is in the format I would like to use:
Get-Content computers.txt | Invoke-AMTPowerManagement -Port:16993 -Operation:PowerOn Will pull the list of amt clients from a text file and pipe them in the Invoke-AMTPowerManagement Cmdlet ComputerName Port Operation Status ------------ ---- --------- ------ computer1.vprodemo.com 16993 PowerOn Successful computer2.vprodemo.com 16993 PowerOn Successful computer3.vprodemo.com 16993 PowerOn Successful
I don't know if we need to use the -port part (I never set up TLS). I have an AMT password that I have set up on all the PCs that I've provisioned so far. I've tried using the "write-amtcredential" command and entered the AMT password. I'm not sure if it was set or not though.
I would keep it first simple, I use -TLS and it knows what port to use.
Get-Content d:\comps.txt | Invoke-AMTPowerManagement -TLS -Username XXXX -Password XXXXX -Operation:PowerOn
This line works for me
Once you get this working you can go a step deeper with commands like write-AMTcredential, read-AMTcredential but first keep it as basic as possible, like this you see quicker where the problem in a script is
Maybe this would be a script for you
FOR /F %%i IN (PathTocomputers.txt) do START RemoteControl.exe -hostname %%i -user XXXXX -pass XXXXXX -PowerUp -tls -ignoreCert
All you have to change are the "XXX's" fill in username and password
and change "PathTocomputers" to your path and file with computername's (one on a line)
Save the line as a cmd or run it on command line but run it in the same directory where you have RemoteControl.exe.
You can download this tool at the link below (Intel)
-ignoreCert Isn't really necessary,only if you have problems with certificates
This way works faster than a PowerShell script for me; it starts them all at once but be careful I never tried more than 300 at once