我有一个问题,我已经自动创buildExcel.Application COM对象,将一些数据添加到工作簿,然后将文档保存为xlsx。
这工作正常,如果:
当我修改相同的计划任务时失败 ,但将其设置为“ 运行用户是否login ”。
下面是一个示例脚本,说明我遇到的问题:
$Excel = New-Object -Com Excel.Application $Excelworkbook = $Excel.Workbooks.Add() $excelworkbook.saveas("C:\temp\test.xlsx") $excelworkbook.close()
我有一个理论,COM对象以某种方式失败,如果我的configuration文件没有加载/如果它没有在命令窗口中执行。
创build计划任务时可以select哪些选项的创意,或创buildExcel对象时使用哪些选项或使用SaveAs()函数? 任何人都可以重现吗? 我已经能够在Server 2008 R2机器和Windows 7上看到这种行为。还没有尝试过其他平台。
你是否试图在没有login的时候运行这个? 如果是这样,我会指出你在这个微软知识库文章的一些可能的原因: 服务器端办公自动化的注意事项 。 标题说服务器端,但文章也指定这适用于客户端版本的Windows没有在加载用户configuration文件的交互式会话中运行。
如果你确实希望这个在没有用户login的情况下运行(使用你描述的选项,这听起来就像你这样做),最终我不确定你将能够解决你的问题,文章。 如果您只需要在login时运行它, 只是不要select该选项?
我被烧了,不想重写代码。 我看到你的post和其他几个让我放弃的东西。 然而,我的坚持得到了回报。 我试图让jenkins运行一个脚本来清理我们的生产环境并输出到Excel。 我不想要一个文本文件,因为我突出显示软件版本不匹配在红色,所以需要Excel。
这是对我有用的答案:
你必须创build一个文件夹(或64位Windows上的两个):
(总是64Bit)
C:\ WINDOWS \ system32 \设置\ systemprofile \ Dektop
(32位)
C:\ WINDOWS \ Syswow64资料\ CONFIG \ systemprofile \桌面
有人提供的链接作为来源:
http://www.patton-tech.com/2012/05/printing-from-scheduled-task-as.html
我的来源是: