如何解决当在PHP exec函数中执行exe时,Windows API函数FindWindow始终返回0
| 我制作了一个命令行应用程序来在服务器上执行一些任务。例如,它“跟踪”一个窗口并向其发送密钥。我使用Windows API函数findWindow()查找窗口。当我从命令行运行exe时,它运行得很好,除非我使用exec()函数从PHP运行它。 FindWindow函数始终返回0(找不到窗口句柄),为什么呢?它在沙盒中运行还是其他? 我该怎么办?任何人? 谢谢您的回答。 亲切的问候, 欧文·汉吉斯(Erwin Haantjes)解决方法
服务无法在前台用户会话中找到窗口。这称为会话-0隔离。
PHP在(通常)作为服务在特定会话/上下文中运行的Web服务器下运行。因此,您的findWindows()函数将失败。
您可以通过调用PHP.exe从您自己的会话的命令行运行脚本来检验此理论。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。