Я написал сценарий, который читает всю почту из почтового ящика Exchange и записывает все виды вывода (файлы .txt, папки и т. д.). Все работает нормально, когда я запускаю это в Powershell ISE. Проблема начинается, когда я делаю летучую мышь (powershell.exe C:\script.ps1) и планирую летучую мышь в TaskManager. Все папки созданы, выходные файлы созданы, но они пустые. Обычно содержимое глобальной переменной попадает в файл, но сейчас этого не происходит.
## Global ###
$body = ''
$dateReceived = ''
$attachCont = ''
Function check() {
DoSomething
$Global:body = $mail.body.text
}
Function Write() {
$body >> 'file.txt'
}
Я делаю что-то вроде этого (см. выше). "Файл.txt" создан, но он пустой. Когда я делаю «Write-Host $body» чуть выше записи файла, я ничего не вижу. Значит, с глобальной переменной что-то не так (я так думаю?). ПРИМЕЧАНИЕ. Когда я запускаю его в ISE, содержимое записывается, когда я запускаю задачу в диспетчере задач, содержимое НЕ записывается.
Является ли это проблемой разрешения/проблемой глобальной переменной?