2013-03-19 156 views
0

我已经通过Python自动创建了PowerPoint幻灯片套件,并在Task Scheduler中设置了一个触发器来生成每日报告。Python PowerPoint SaveAs任务计划程序

当我的电脑登录时,这一切都很好,但当设置为“运行是否已登录”时脚本失败。

我检查,看看有过错哪一行,它原来是这一个:

Presentation.SaveAs('C:\\Users\\me\\Desktop\\test.pptx') 

我正在运行任务计划程序优先级最高的,但它只能运行与“用户此任务登录“状态。

下面是引用整个基本代码段:

import win32com.client, MSO, MSPPT, sys, os 
g = globals() 
for c in dir(MSO.constants): g[c] = getattr(MSO.constants, c) 
for c in dir(MSPPT.constants): g[c] = getattr(MSPPT.constants, c) 

error_file = open('C:\\Users\\me\\Desktop\\error_file.txt', 'wb') 

run = False 

try: 
    Application = win32com.client.Dispatch("PowerPoint.Application") 
    Application.Visible = True 
    Presentation = Application.Presentations.Add() 
    Slide = Presentation.Slides.Add(1, ppLayoutBlank) 
    Presentation.SaveAs('C:\\Users\\me\\Desktop\\test.pptx') 
    Presentation.Close() 
    Application.Quit() 
    run = True 

except: 
    run = False 

if run == True: 
    error_file.write('ok') 
else: 
    error_file.write('fail') 

任何帮助将非常感激。

感谢, JP

+0

我也尝试将SaveAs目录更改为:“C:\\ Users \\ test.pptx”,但仍然没有任何反应,并且任务计划程序以0x1退出。 – pj2452 2013-03-19 18:21:05

+0

我也尝试在名为test的“C:”驱动器内创建一个文件夹,并且给予每个人写入权限,但这也不起作用。 – pj2452 2013-03-19 19:37:51

回答

0

this page,你必须使用在任务计划向导“打开高级属性”复选框,然后提供任务必须使用用户的用户名和密码。

+0

感谢您的回复。我也必须在创建任务或编辑时输入这些信息。仍然不起作用:( – pj2452 2013-03-19 19:18:11