PHP作为一种服务器端的脚本语言,象编写简单,或者是复杂的动态网页这样的任务,它完全能够胜任。但事情不总是如此,有时为了实现某个功能,必须借助于操作系统的外部程序(或者称之为命令),这样可以做到事半功倍。

区别:

system() 输出并返回最后一行shell结果。(推荐学习:web前端视频教程)

exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。

passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。

如何用php启动exe程序,并在进程中查看?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

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;

}

上面的代码主要是启动了任务管理器,然后根据返回的数据判断是否启动了所要判断是否运行的程序。

启动程序的代码:

1

2

3

4

5

6

7

8

9

<?php

    $out1 = "";   

    $a=exec  ("e:\\my.exe",$out1);

    //如果程序的名字为汉字,便启动不了

    //$a=exec("D:\\soft\\坐标正反算.exe",$out1);

    print_r($out1);

    echo '<br/>';

    print_r($a);

如何是想运行带有汉字名称的程序,则需要借助iconv()函数,便可以运行带有汉字名称的程序了。

1

2

3

4

5

6

7

8

<?php

 

    $out1 = "";   

    exec(iconv ( 'UTF-8', 'GBK', 'D:\\soft\\坐标正反算.exe' ),$out1);

    print_r("out is:".$out1);

    

    echo '<br/>';

    print_r($a);

以上就是php怎么启动exe文件的详细内容,更多请关注php中文网其它相关文章!

「大理石T型槽平台」大理石T型槽平台的特性

php怎么启动exe文件的更多相关文章

  1. c#启动EXE文件(简单的)

    在程序执行中会遇到启动本软件的exe问,或者启用其它的exe文件,已达到执行某些操作的作用.下面是两种最常见的启动exe文件. 1.调用系统dll使用其提供的方法. 引用的dll, [DllImpor ...

  2. C# 启动EXE文件及带启动参数EXE

    (一).先制作一个带启动参数的EXE文件. 步骤: 1.定义全局私有变量:private string[] s = new string[1];  //这里为了简单起见,只做一个参数 2.  在窗体的 ...

  3. paip. everything exe 文件不能启动的解决

    paip.   everything  exe  文件不能启动的解决 作者Attilax ,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blo ...

  4. 应用程序启动后修改自身EXE文件或自删除EXE文件(附VC++6.0源码)

    在CSDN论坛看到这么一个问题:如何为第三方工具加上使用限制次数?问题的答案很简单,重新做一个应用程序,将第三方程序打包进这个应用程序,启动应用程序时可以检查第三方工具的使用次数,检查通过,可运行第三 ...

  5. C# 新建 exe文件,并且自定义协议从浏览器中启动该程序

    1. C# 新建一个 exe 文件: 打开你的 vs ,[文件] ---> [新建] ---> [项目] 选择 Windows 窗体应用,并起一个名字: 接着该文件会在当前项目的 myap ...

  6. BS项目启动任意EXE文件或者CS项目

    1. 基于注册表启动exe程序 1. 桌面新建注册表执行文件:protocal.reg 2. 任意文本编辑器打开该文件 Windows Registry Editor Version 5.00 [HK ...

  7. win7下exe文件设置为开机启动

    如何将自己的exe程序设置为开机自启动 如何将自己的exe程序设置为开机自启动 将自己的exe程序设置为开机自启动话不多说,直接看 首先1:cmd—>regedit 其次找到下面的路径就可以:( ...

  8. MFC在一个工程中启动其他工程的exe文件

    说明:有的时候把两个工程合并,但是偷懒不想在工程中添加代码,所以想到了这个办法,仅限偷懒哈哈哈哈 方法:新建一个主程序,在主程序的界面中添加按钮,在按钮的程序代码中添加以下语句: void CMain ...

  9. html启动本地.exe文件

    之前没有了解这个内容,还是一个小伙伴在面试中遇到的一个题目,感觉挺有意思就研究了一下这个东西到底是怎么用的.搜了一下解决方法,是添加注册表,自己运行了可以使用 第一步:首先打开注册表,方法是 win+ ...

随机推荐

  1. python twisted异步将数据导入到数据库中

    from twisted.enterprise import adbapi from twisted.internet import reactor def creat_conn(): # 数据库基本 ...

  2. 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第6节 static静态_13_静态static关键字修饰成员方法

    static关键字 用来修饰方法的情况 任何使用这个静态方法呢? 可以直接通过对象名称的方式进行调用. 更好的写法是通过类名称进行调用. 分别定义成员变量和静态变量 静态方法里面不能用this

  3. 几个模拟OLE事件注册、调用的宏

    最近遇到一个要求,将原来的OCX控件,替换成直接的DLL调用. 遇到OLE的事件回调,写了三个宏,用于简化代码 #define OLE_ENVENT_IN_CLASS_ONE(event_name, ...

  4. 应用安全 - 渗透测试 - .net网站

    注入 注入 单引号检测 - 多数使用MSSQL数据库 常规注入绕过 "or''=' | 'or''=' 'or'='or' | 'or'='or'" 上传 加图片头GIF89A

  5. xshell输入字母空格间距变大

    按一下shift+空格(全角/半角转换的快捷键,引起的问题)

  6. go工具链

    1 编辑器 goland 2 GOPATH GOPATH是go的一个环境变量,它以绝对路径提供go的工作目录. go工程的源码存放在${GOPATH}/src目录下,go编译过程中生成的中间文件存放在 ...

  7. HDU-3665 Seaside

    XiaoY is living in a big city, there are N towns in it and some towns near the sea. All these towns ...

  8. 【focus-lei 】微服务

    随笔分类 - 微服务 .net core使用NLog+Elasticsearch记录日志 摘要:在微服务或分布式系统中,如果将日志作为文件输出,查看系统日志将非常不便:如果将日志保存到数据库中,又不能 ...

  9. call apply bind的使用方法和区别

    call 1.改变this指向   2.执行函数    3.传参 var obj={}; function fun(a,b){ console.log(a,b,this); } fun(1,2); / ...

  10. AOS Clustering on one Server

    原文链接:http://www.cnblogs.com/JackyXu1981/articles/1287910.html AOS Clustering on one Server AOS Clust ...