我正在编写一个会自动安排任务的应用程序。它应该适用于 Windows 7 和 Windows XP。不幸的是,我似乎无法在 Windows XP 上运行它。
在 setup .C 文件中,我创建批处理文件并执行它。在 Windows 7 版本上,任务命令如下所示:
schtasks /create /tn \"<Script Name>\" /xml \"%s\\<Script XML>\"
其中 %s 是安装文件(和临时批处理脚本)的工作目录。此方法已在多台 Windows 7 机器上进行了测试,并已确认在所有机器上都可以完美运行。我决定使用 XML 文件创建任务的原因是因为该任务不会在笔记本电脑上运行,因为默认情况下自动生成的 XML 将脚本设置为不使用电池运行。
然而,当我尝试在 Windows XP 上运行相同的应用程序时,我得到了无法识别 /xml 参数的错误,因此我为 XP 重写了任务计划命令。我知道运行这个应用程序的 XP 计算机无论如何都不是笔记本电脑,所以我认为我不必担心自动生成的 XML 中的“不使用电池运行”部分。
这是 Windows XP 版本的任务命令:
schtasks /create /tn \"<Script Name>\" /tr \"%s\\<File To Run>.exe\" /sc minute /mo 60
应用程序完成安装后,我在计划的任务中收到状态消息“无法运行”。我知道我正在安排的可执行文件确实可以工作,因为当我手动运行它时它可以工作(在 XP 和 Windows 7 上),所以我绞尽脑汁试图找到解决这个问题的方法。
如果重要,可执行文件是 C# 文件。我记录了批处理文件和 C# 可执行文件的操作目录,它们都是正确的,所以我不确定为什么我不能让这个任务在 Windows XP 上自动运行。
如果有人可以帮助我,我将不胜感激。我已经在这个问题上工作了几天了。