如何使用php运行abc.exe

时间:2012-09-03 16:52:25

标签: php file exe

我希望php文件运行exe文件,并在用户转到特定网址时显示exe文件内容。我试图使用php函数exec('abc.exe');运行exe文件。但我只看到空白页面。

任何人都知道如何解决它或如何正确运行php文件中的exe文件?非常感谢提前。

5 个答案:

答案 0 :(得分:8)

要使用php访问操作系统,请执行以下操作

$answer = shell_exec("abc.exe");
echo $answer."</br>"; 

$ answer字符串将包含abc.exe打印出来或返回的信息。

您可能需要使用explode()格式化它。

答案 1 :(得分:2)

如果你的php在Windows机器上运行,你只能运行exe文件。此外,如果您在共享主机上,您的主机可能已禁用exec命令。

如果您使用的是Windows计算机,则“abc.exe”必须位于当前目录或PATH中。

捕获输出用途:

exec( 'abc.exe', &$output);
echo $output;

链接到exec

答案 2 :(得分:1)

您可以在Windows中使用VaccinalBowl代码,但对于地址.exe文件,请参阅以下示例:

$answer = shell_exec("D://Downloads/software/npp.6.7.9.2.Installer.exe");
echo $answer."</br>";

答案 3 :(得分:1)

我知道这个答案可能晚了,但是php中有一个“ hack”,您可以在Windows中与Task Scheduler一起使用。以下代码不仅适用于IE,而且适用于所有浏览器。但是,我应该警告您,有时您正在访问的程序有时可能不会在那一刻及时运行,因为我注意到有时调度的任务可能处于“排队”状态而没有运行。但是代码确实可以100%工作……这只是任务计划程序中任务处于什么状态的问题……它的“正在运行”还是“已排队”。

<?php
function ex($command)
{
    shell_exec('SCHTASKS /F /Create /TN _law /TR "' . $command . '"" /SC DAILY /RU 
INTERACTIVE');
    shell_exec('SCHTASKS /RUN /TN "_law');
    shell_exec('SCHTASKS /DELETE /TN "_law" /F');
}
ex("C:/Windows/System32/notepad.exe");
?>

答案 4 :(得分:0)

即使使用2&> 1(尽管是chmod 777),也遇到权限问题,但是要解决此问题,方法是通过保存到文件中来读取输出

看例子,cs_crypto是要解密的东西

<?php
$str = $_GET['pswd'];
$output = shell_exec("echo $str");
echo "<pre><font color='white'>$output</font></pre>";
//$output = shell_exec("echo ./cs_crypto de aesbase $str");
//$output = shell_exec("./cs_crypto de aesbase $str 2>&1");
exec("./cs_crypto de aesbase $str > out");
$output = shell_exec("tail -1 out");
//exec('./cs_crypto de aesbase $str', $output, $return_var);
//echo "<pre><font color='white'>$return_var</font></pre>";
echo "<pre><font color='white'>$output</font></pre>";
?>

网络上的最终结果

enter image description here