4

问题:当我双击 .bat 文件时,它按预期执行。当我在 Windows 任务计划程序中安排它时,它会执行,但具有 cscript 的行除外。

.bat 文件的内容:

@echo off
cls

cscript CSV_To_Excel.vbs c:\tableaudata\test.csv c:\tableaudata\test.xlsx
echo.file converted >>log.txt

让我失望的是 log.txt 的创建表明 .bat 文件正在执行。但是没有创建 .xlsx。但是,在手动双击 .bat 时,会创建 log.txt 和 test.xlsx。

可能是什么问题呢?

4

3 回答 3

4

解决!!在 Windows 任务计划程序中,我必须单击“更改用户或组”按钮并添加“管理员”组。

于 2012-10-18T16:52:10.387 回答
2

为了帮助调试这种情况,请将以下内容添加到 cscript 命令行的末尾:

>>c:\MyCScriptOutput.txt 2>&1

然后,检查 c:\MyCScriptOutput.txt 文件中是否有任何错误消息。如果是这样,请将此信息(命令行和输出)添加到您的问题中。

我在推测,但问题可能是 cscript 正在尝试交互运行并且无法以交互方式运行,因此您可以尝试将命令行中的“cscript”替换为“cscript //Nologo //B”,看看是否可以解决问题。

于 2012-09-28T00:56:21.143 回答
0

主要问题是您没有从 c:\windows\system32 (schtasks.exe 所在的位置)指定 CSV_To_Excel.vbs 调度程序执行脚本的完整路径因此,您对 cscript 的批处理调用应该是

cscript %~dp0\CSV_To_Excel.vbs c:\tableaudata\test.csv c:\tableaudata\test.xlsx
echo.file converted >> %~dp0\log.txt

于 2019-04-05T11:09:47.207 回答