PowerShell и Excel проблема при автоматизации

Я столкнулся с любопытной проблемой.

Когда я запустил этот код:

$Excel = New-Object -Com Excel.Application 
$book = $Excel.Workbooks.Add()
[threading.thread]::CurrentThread.CurrentCulture = 'en-US'
sleep 10
$book.saveas("c:\Temp\test.xlsx")
$Excel.quit()
Stop-Process -Name "Excel*"

в PowerGui, хосте POwerSHell.. где-нибудь, это работает красиво.

Если я положу в.bat и вызову powerhsell "c:\temp\excel.ps1" тоже работает нормально.

Но если я попытаюсь запланировать этого парня в задачу расписания или выполнить тип задания cmd сервера, то произойдет ошибка:

Исключение сообщения, вызывающее "SaveAs" с аргументом (ами) "1": "Не удалось выполнить метод SaveAs в Workbook cla s"

Только когда он вызывается заданиями SQL Server (это тоже простая команда cmd и строка совпадает с.bat powerhsell "c:\temp\excel.ps1"), возникает ошибка.

Что это может быть? Я пытался изменить формат файла и т. Д. И ничего

Спасибо, парни:)

1 ответ

Решение:

Вы должны создать папку (или две на 64-битных окнах):

(32Bit, всегда)

C: \ Windows \ System32 \ Config \ systemprofile \ Dektop

(64Bit)

C: \ Windows \ SysWOW64 \ Config\systemprofile\Desktop

Решение в форуме:

Решение форума MS

Другие вопросы по тегам