使用PHP在前台执行视频播放器

时间:2011-07-20 18:57:32

标签: php windows process

我正在尝试使用PHP在Windows 7中打开视频播放器,但似乎无法实现。它的唯一工作方式是在后台 - 我可以听到声音,它在进程列表中,但我看不到视频播放器本身。它没有列在任务栏或通知区域中。

我尝试过使用exec命令和使用WScript.Shell的COM类。我甚至尝试在命令行前启动,但仍然没有。如果我在cmd.exe中使用相同的行,它可以工作,播放器弹出并开始播放但是使用php,它会在后台启动或者根本不启动。

我使用的代码如下:

exec('start "C:\Program Files\Daum\PotPlayer\PotPlayer.exe" "D:\mov.avi"');

`$ w = new COM(“WScript.Shell”); $ o = $ w->运行('“C:\ Program Files \ Daum \ PotPlayer \ PotPlayer.exe”“D:\ mov.avi”',1,false);

- 编辑 -

这种情况一直发生在我身上 - 就在你长时间搜索并失去所有希望之后,你发布了你的问题。在接下来的10分钟内,您可以躺下来浏览并找到问题的答案。

无论如何,我得到了这个工作。运行 - > services.msc找到apache服务器服务并选择属性。登录选项卡并选中“允许服务与桌面交互”。重启apache,最后一个脚本有效。 Windows将询问您是否要查看该消息,只需单击“是”即可开始播放视频。在您单击返回桌面之前,请务必关闭视频播放器窗口,否则它将继续播放,您必须从任务管理器停止它。 `

2 个答案:

答案 0 :(得分:0)

您不应该依赖“允许服务与桌面交互”,因为它可能会导致问题。 (事实上​​,它不应该在Windows 7中删除吗?)

这不适合你的原因是因为Session-0隔离。基本上,服务作为用户在完全不同的空间中运行。进程可以执行,但用户将无法直接进行交互。如果您选中“允许服务进行交互”框,则会破坏该墙,但我不会永久保留它。

http://msdn.microsoft.com/en-us/windows/hardware/gg463353

答案 1 :(得分:0)

如果您通过System启动Web服务器。 PHP进程和子进程由" system"运行。并且进程在后台。尝试手动启动Web服务器。