我遇到需要从 php 脚本调用批处理文件的情况...但是,此批处理文件需要以管理员身份运行才能工作。 我的解决方案是创建批处理文件的快捷方式,然后选中该框以从快捷方式以管理员身份运行...但是我无法让 php 调用快捷方式。
我试过:
exec("C:/path/movefiles_admin.lnk")
和
system("cmd /c C:/path/movefiles_admin.lnk");
两者都不起作用。有什么建议吗?
试试这个:
exec("START C:/path/movefiles_admin.lnk");
START 启动单独的命令提示符窗口以运行指定的程序或命令。
您可以通过将文件名键入为命令来通过其文件关联运行不可执行文件
如果您的 PHP 在执行批处理文件的快捷方式时遇到问题,请尝试对 test.txt 文件执行简单的读写操作。(检查 PHP 是否在安全模式下运行(。
如果它不执行这些基本操作,则会遇到一些配置问题。
如果使用exec函数启动程序,为了使它继续在后台运行,必须将程序的输出重定向到文件或其他输出流。否则将导致 PHP 挂起,直到程序执行结束。 请参阅此链接了解您的 PHP 版本:手册