繁体   English   中英

Powershell IQY转储脚本失败

[英]powershell IQY dump script fails

我目前正在使Powershell脚本自动化以转储小型DB。 该数据库可通过公司Sharepoint进行访问,我正在利用从上述Sharepoint导出的IQY文件来读取数据库内容。 当我手动运行脚本(即从命令行调用它)时,它没有问题,但是当我尝试从Task Scheduler启动脚本时,会引发以下异常:

System.Reflection.TargetInvocationException

生成异常的行是:

$iqy = $xl.Workbooks.Open($query, 2, $true)

其中$ xl是正确创建的新Excel.Application ComObject,而$ query是包含iqy文件的完整文件路径的字符串。

对于我的配置,我试图使用本地管理员用户(应该启动调度的脚本的同一用户)在Windows Server 2008R2上运行脚本,该用户也有权访问Sharepoint。 我正在运行Powershell 3.0。 我没有加载任何与Sharepoint相关的管理单元。

我发现,唯一的答案是暗示要在Excel中为IQY文件位置和Sharepoint本身授予“信任”。 那没有帮助。 异常似乎也指向共享点问题,但是由于脚本在手动启动时运行良好,因此我无法理解与共享点有什么关系。 我是否错过了任务计划程序的某些复杂性?

任何帮助将不胜感激。

没关系,我似乎找到了答案。

如果任何人都遇到相同的问题,则如果您将它设置为无论用户是否登录都运行,则Excel Com对象似乎有一个不允许它从任务计划程序运行的错误。为避免这种情况,请创建以下2应该在其中运行脚本的计算机上的文件夹:

(总是32Bit)

C:\\ Windows \\ System32 \\ config \\ systemprofile \\ Dektop

(64位)

C:\\ Windows \\ SysWOW64 \\ config \\ systemprofile \\ Desktop

创建文件夹后,它按预期工作。

来源: http : //social.technet.microsoft.com/Forums/windowsserver/en-US/aede572b-4c1f-4729-bc9d-899fed5fad02/run-powershell-script-as-scheduled-task-that-uses-excel- com-object?forum = winserverpowershell

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM