zrz*_*zrz 16 powershell path task-scheduler microsoft-excel
我编写了一个 PowerShell 脚本来打开一个 Excel 工作簿并运行一个宏。当我从 PS 控制台或什至从命令行使用 powershell.exe script.ps1 运行该脚本时,它就可以正常工作。当我从 Windows 任务计划程序设置任务时,它会引发有关该 Excel 文件的异常,说它不存在或已在使用中。
该文件肯定存在,因为脚本从命令行运行良好,我确定它没有被使用。
我试图将 Excel 文件移动到本地和非特权区域,以避免网络信任/管理员权限问题。任务仍然以最高权限运行。路径没有空格或特殊字符。
当我尝试使用文件系统对象访问文件时,即使从调度程序运行也没有错误,所以我猜它特定于Excel.Application.Workbooks.Open("..")方法。
我现在应该考虑什么?
小智 45
创建这两个文件夹:
32位:
C:\Windows\System32\config\systemprofile\Desktop
Run Code Online (Sandbox Code Playgroud)
64位:
C:\Windows\SysWOW64\config\systemprofile\Desktop
Run Code Online (Sandbox Code Playgroud)
如果 Excel 不以交互方式运行,则需要这些文件夹。即使您使用的是 64 位操作系统,也要创建这两个文件夹。
squ*_*man 12
这可能是 DCOM 权限问题。自动化 Excel 有时充满危险......
我发现解决此类问题的唯一方法是通过 DCOM 权限将 Excel 设置为以特定用户身份运行。
不幸的是,将其保留为交互式用户或启动不适用于任务调度程序,即使将任务设置为在具有机器管理员访问权限的帐户下运行也是如此。
| 归档时间: |
|
| 查看次数: |
61292 次 |
| 最近记录: |