PHP作为一种服务器端的脚本语言,象编写简单,或者是复杂的动态网页这样的任务,它完全能够胜任。但事情不总是如此,有时为了实现某个功能,必须借助于操作系统的外部程序(或者称之为命令),这样可以做到事半功倍。 区别: system() 输出并返回最后一行shell结果。 exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。 passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。 如何用php启动exe程序,并在进程中查看?(推荐学习:PHP视频教程) function query_process($service)
{
/*
**查看WINDOWS系统进程列表,并查找指定进程是否存在
*/
$tasklist = $_SERVER["WINDIR"]."/system32/tasklist.exe"; //找到windows系统下tasklist的路径
//print($tasklist); //打印tasklist的路径
@exec($tasklist,$arr); //运行tasklist.exe,返回一个数组$arr
//print_r($arr); //打印数组
//用循环打印进程列表
foreach($arr as $value)
{
$list = explode(" ",$value);
print($list[0].'<br />');
//查找指定进程并打印
if($service==$list[0])
{
return true;
}
}
return false;
} 上面的代码主要是启动了任务管理器,然后根据返回的数据判断是否启动了所要判断是否运行的程序。 启动程序的代码: <?php
$out1 = "";
$a=exec ("e:\\my.exe",$out1);
//如果程序的名字为汉字,便启动不了
//$a=exec("D:\\soft\\坐标正反算.exe",$out1);
print_r($out1);
echo '<br/>';
print_r($a); 如何是想运行带有汉字名称的程序,则需要借助iconv()函数,便可以运行带有汉字名称的程序了。 <?php
$out1 = "";
exec(iconv ( 'UTF-8', 'GBK', 'D:\\soft\\坐标正反算.exe' ),$out1);
print_r("out is:".$out1);
echo '<br/>';
print_r($a); 以上就是php怎么启动exe文件的详细内容,更多请关注模板之家(www.mb5.com.cn)其它相关文章! |