У меня есть следующая функция:
Function Email{
param ($to, $Subject, $Body, $Attachment)
$Outlook = New-Object -Com Outlook.Application
$Mail = $Outlook.CreateItem(0)
$Mail.To = $To
$Mail.Subject = $Subject
$Mail.Body = $Body
$Mail.Attachments.Add($Attachment)
$Mail.Send()
}
Она отлично работает в тестах в ISE, но из другого скрипта, работающего как служба, не работает. Так что в этом родительском скрипте я пытаюсь запустить его в новом экземпляре powershell, чтобы посмотреть, будет ли он там работать, но, похоже, нет. Внутри родительского скрипта у меня есть:
Import-Module C:\...\Email.ps1
$to = Myemail
$Subject = "Test"
$Result = $Result[0].FullName
$Body = (-join("'",$Result,"'"))
write-host $to $Subject $Body $Result #test to make sure params are visible, test successful
$Command = Email $to $Subject $Body $Result
Start-Process powershell -ArgumentList "-WindowStyle Maximized -command invoke-command -scriptblock {$command} -argumentlist $to $Subject $Body $Result"
Однако он по-прежнему не работает в службе. Это из-за ошибки с моей стороны?