我知道这可能是一个非常普遍的问题,但我想做的是从 php webapp 启动一个 .exe 程序。
.exe 的第一个屏幕是带有用户名和密码的登录表单。我想让 php 代码打开 .exe 程序并将用户名和密码的相应值插入到它们的字段中(这些值存储在 mysql 中)。
由于到目前为止我还没有需要打开的软件,我知道这似乎是一个模糊的问题,但我正在寻找一种通用的方法或一些这样做的指针。
因此,根据我们在您的问题下的评论/聊天,使用phpseclib,您应该能够连接到远程机器,它将运行您的应用程序:
require_once('Net/SSH2.php');
$ssh = new Net_SSH2('winhostaddress');
//if needed:
if (!$ssh->login('user', 'pass'))
{
exit('Failed to connect to win');
}
$ssh->exec('C:\\Path\\to\\app.exe argument1 argument2 argument3');
这应该够了吧。使用标志时,例如在 *NIX 系统上:ls -a
,您应该知道 Windows 对应的是/
. 除此之外,一切都差不多。escapeshellarg
在将客户端数据传递给可执行文件时,不要忘记。
包含空格的参数应使用双引号分隔。
如果您不确定天气或您用于通过 ssh 连接的用户是否可以访问您正在启动的应用程序,请尝试将其添加到您的实际命令中:
runas /user:username C:\\Path\\To\\App.exe
username
您确定具有适当权限的用户在哪里。请注意,系统可能会提示您输入密码。
对于任何其他问题,以下是一些相关问题: