【问题标题】:Executing Scripts via PHP通过 PHP 执行脚本
【发布时间】:2017-03-21 13:08:23
【问题描述】:

我正在尝试在 PHP(本地 WAMP 服务器)中执行一个脚本文件(Batch 或 Python),该文件将在我的计算机上打开一个程序并发送键盘快捷键以将程序置于全屏模式。我已经使用 AutoHotKey(.ahk 脚本)制作了这个脚本。

我尝试使用这些 PHP 命令打开运行 .ahk 脚本的批处理文件:

system("cmd /c C:\wamp64\www\test.bat");
exec("test.bat");
exec("cmd.exe /c test.bat");

但所有这些似乎只是在网络服务器上运行脚本,而不是在我的 Windows 计算机上,因此 .ahk 文件永远不会执行。我也尝试直接执行 .ahk 文件,但也无法正常工作。

有谁知道我可以使用 PHP(或其他网络语言)在我的计算机上执行此脚本的方法吗?

【问题讨论】:

  • 感谢您的建议,我尝试将“wampapache64”的登录设置更改为我的个人帐户,我还尝试允许桌面交互,但都不起作用(服务重启后)。

标签: php batch-file autohotkey


【解决方案1】:

您必须为批处理文件指定绝对路径,因为 CLI SAPI 与 WAMP 的文档根目录无关。

您尝试在第一个命令中传递完整路径。但是双引号内的序列\t 被解析为制表符。将双引号改为单引号:

system('cmd /c C:\wamp64\www\test.bat');

另外,我认为您不需要显式运行 cmd,因为批处理文件可以在 Windows 上执行。

【讨论】:

  • 感谢您指出这一点,但这仍然没有解决问题。我还按照 Aniket 的建议更改了登录设置,但我仍然无法在计算机的用户端执行任何操作。
  • @pclever1,为什么你认为文件没有被执行?
  • 我同意这是一个权限问题,我像上面描述的教程一样更改了 Windows 服务管理器中的 Apache 登录设置,但仍然没有使用此命令执行批处理文件system('cmd /c C:\wamp64\www\test.bat');跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-03
  • 2012-11-14
  • 1970-01-01
  • 1970-01-01
  • 2011-07-03
  • 2018-03-29
相关资源
最近更新 更多