尝试创建计划任务时出现 Powershell 错误?无法处理参数 'Argument' 的参数转换

Powershell error while trying to create Scheduled Task? Cannot process argument transformation on parameter 'Argument'

我正在尝试创建一个在系统启动时 运行 的计划任务。我正在使用以下代码在 PowerShell 中创建此计划任务。

$Trigger= New-ScheduledTaskTrigger -AtStartup
    
$User= "NT AUTHORITY\SYSTEM"
    
$Action= New-ScheduledTaskAction -Execute $sendEmailCommand -Argument $args
    
Register-ScheduledTask -TaskName "Send Restart Notification" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force`

变量如下:

$sendEmailCommand = "C:\Test\Test.exe"
$args = "-m smtp.gmail.com -p 587 -u myemail -p mypassword -t my message -o tls=yes -k MyEmailSubject -g recipientEmailAddr"

但是,当我运行上面的脚本时,我收到以下错误。

New-ScheduledTaskAction : Cannot process argument transformation on parameter 'Argument'. Cannot convert value to type 

如果我从带有 New-ScheduledTaskAction 的行中删除 -Argument,那么它 运行 就没问题了,没有错误,任务会按预期出现在任务计划程序中。这行代码是这样的:

$Action= New-ScheduledTaskAction -Execute $sendEmailCommand

我尝试了各种引号排列和不引号排列。我做错了什么?

$args 是 powershell 保留关键字。为变量使用其他名称。

更多here