【问题标题】:using phps exec command to launch an application on the server使用 phps exec 命令在服务器上启动应用程序
【发布时间】:2011-08-29 17:54:18
【问题描述】:

我正在尝试在服务器上运行一个应用程序,并使用以下代码从 PHP 调用它。

$application = "D:\\Program Files (x86)\\ScanBoy\\DM ScanBoy.exe";
exec($application);

现在应用程序正在“运行”,但它会立即崩溃。如果我只是运行应用程序(通过双击 exe)它运行并且一切都很好。

当应用程序崩溃时,我得到的唯一错误是

"{应用程序名称} 已停止工作。Windows 正在检查 解决问题”

我在通过 c# 后端运行应用程序到 ASP.NET 页面时遇到了这个问题。解决方案是设置工作目录。但是在 php / exec 我不知道如何设置此选项。

有什么帮助吗?

【问题讨论】:

    标签: php exec


    【解决方案1】:

    您可以:

    1. 使用 exec("cd myworkdir/ && D:\\Program Files (x86)\\ScanBoy\\DM ScanBoy.exe"); 更改该 exec 命令的工作目录(仅限)

    2. 使用phpchdir()函数改变php进程的工作目录。

    您可以在此处找到chdir 文档: http://php.net/manual/en/function.chdir.php

    【讨论】:

    • 谢谢,当我在等待回复时,我想通了 :) 我的下一个问题是:我需要在启动应用程序后将目录改回原来的 WD 吗?如果我不这样做,它会对 php / mysql 产生影响吗?
    • 不,除非您正在使用的现有工作目录中有一些文件,否则您不必这样做。 PHP/MySQL 不在乎。
    【解决方案2】:

    您可以chdir()更改当前工作目录

    【讨论】:

      猜你喜欢
      • 2017-11-05
      • 1970-01-01
      • 2013-04-07
      • 1970-01-01
      • 2011-03-31
      • 2017-05-30
      • 1970-01-01
      • 1970-01-01
      • 2010-11-21
      相关资源
      最近更新 更多