我正在尝试使用本地计算机上的exec()从PHP打开Windows程序。是否可以使用PHPs exec函数启动在前台运行的系统程序(在Windows 10上相关)?
这一行:
exec("C:/Windows/notepad.exe 2>&1");
导致Microsoft的记事本在后台打开(验证它实际上是使用任务管理器运行)但我无法访问它,即它没有打开窗口。如何让它在前台运行,这样我才能真正看到它并与之交互?
答案 0 :(得分:0)
因此,对于普通的编码人员来说,使用exec()似乎是一个彻头彻尾的球痛。还有另一种方法可以实现这个结果:让PHP使用file_put_contents()生成.bat文件,其中包含打开给定文件路径的指令,然后自动删除自身,如下所示:
@echo off
Start "" "C:\Path\To\File\SomeFile.txt"
del %0
此方法需要某种任务调度程序来监视给定的文件夹并在它们进入时执行批处理文件。我相信PowerShell可以执行此操作,并且可能执行Windows任务计划程序。我认为Linux有Cron。