【问题标题】:Scheduled task running batch but not exe within the batch计划任务运行批处理但不是批处理中的 exe
【发布时间】:2015-02-23 21:36:08
【问题描述】:

我知道已经有类似的问题,但其他解决方案似乎都没有帮助。

使用 Windows 7,我有一个可执行文件(为了解释,我称之为 test.exe),它接受当前日期的参数。

使用运行命令时的示例:

c:\test.exe 12/26/2014

可执行文件需要每天运行。

我设置了以下批处理文件来运行带有所需参数的 exe:

@echo off
::This batch will be ran daily to start the exe program
set dateFormat=%DATE:~4,2%/%DATE:~7,2%/%DATE:~10,4%
echo Batch started %dateFormat% %Time%>> BatchLogfile.txt
set testfile=C:\test.exe
start %testfile% %dateFormat%
pause

我可以通过在资源管理器中双击它来成功运行批处理,但是当我将它添加为计划任务时,它实际上并没有启动 exe。

批处理确实运行了,我可以看到 cmd 和 exe 的进程,但是 exe“界面”没有弹出。批处理中的 echo 行成功写入日志文件。

在计划任务上,我目前正在使用cmd 作为程序/脚本和以下参数:

/k "C:\test.bat"

我也在任务调度器中尝试了以下参数,但没有成功:

C:\Windows\System32\cmd.exe

/c start "" "C:\test.bat"

/k start "C:\test.bat"

还有什么我应该尝试以使 exe“界面”显示在屏幕上的吗?除了任务计划程序之外,也许还有更好的方法来运行 exe?

【问题讨论】:

  • 请注意%DATE% 的格式取决于用户的国际化设置,因此该代码只能在美国按原样工作(并且仅当用户没有选择其他格式时) .

标签: windows batch-file windows-7 cmd scheduled-tasks


【解决方案1】:

如果您想查看 test.exe 的 GUI,则需要将相应的 Windows 计划任务配置为“仅在用户登录时运行”。当然,该过程只会为配置的用户帐户运行。

这可以在相应计划任务的“常规”选项卡的“安全选项”部分中选择。

【讨论】:

  • 啊,是的。这个是我想多了。我远程进入任务正在运行的计算机,并且我认为当我关闭远程会话时用户已注销。谢谢杰森。
猜你喜欢
  • 2012-09-12
  • 2013-03-01
  • 2014-09-14
  • 2014-12-12
  • 1970-01-01
  • 2019-04-06
  • 2014-03-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多