使用 exec() 命令 php

问题描述 投票:0回答:3

我正在尝试运行一个测试脚本,看看我想要的一个更大的项目是否可行。在我的 wamp 服务器上,我的索引调用这个单独的 php 脚本:

<?php

exec("cd C:\Program Files (x86)\Notepad++");
exec("notepad++.exe");
echo "didn't crash";
?> 

我需要程序做的就是打开记事本++。我尝试将快捷方式放在名为 (www) 的同一目录中,从桌面运行快捷方式,然后访问 exe 本身。每次我使用它时,它都会运行并说“没有崩溃”,但它从未打开记事本++。

exec 的 php 手册(http://php.net/manual/en/function.exec.php)显示了一个看起来太简单的示例,但它确实有效。 system() 示例也是如此。

我所需要的只是访问 cmd,以便我可以调用文件。现在它只是 exe 的,但最终将是 jar 的/py 的,将发布到文本文件。

php cmd
3个回答
1
投票
<?php

$ret = exec('START C:\Program Files (x86)\Notepad++\Notepad++.exe', $output, $error);

// Debug
var_dump($ret);
var_dump($output);
var_dump($error);
?>

更新

也许你的 php 没有权限在你的 wamp 上运行命令: https://stackoverflow.com/a/9161752/1721486


0
投票

在 Mac 上,您需要命令来实际打开应用程序,例如:

exec( 'open SomeApp.app' );

我认为在 Windows 上你会使用“开始”(?)

exec( 'start notepad++.exe' );

0
投票

您说的是 WAMP 服务器,我想您已经检查过这一点,但是 Apache 是否以登录用户身份运行?否则记事本会出现在您看不到的某些桌面上。

© www.soinside.com 2019 - 2024. All rights reserved.