允许windows服务在Perl中与桌面交互

允许windows服务在Perl中与桌面交互,windows,perl,windows-services,Windows,Perl,Windows Services,我有一个windows服务正在运行,它的部分操作是打开一个internet explorer窗口。这一切都很好,除了Internet explorer窗口(从服务调用时)没有出现!您可以看到它已成功启动,并且可以在任务管理器中看到它,但这就像窗口被隐藏一样 #!/usr/bin/perl use Win32; my $prog="C:\\Program Files (x86)\\Internet Explorer\\iexplore.exe"; my $arg=""; Win32::Spa

我有一个windows服务正在运行,它的部分操作是打开一个internet explorer窗口。这一切都很好,除了Internet explorer窗口(从服务调用时)没有出现!您可以看到它已成功启动,并且可以在任务管理器中看到它,但这就像窗口被隐藏一样

#!/usr/bin/perl

use Win32;

my $prog="C:\\Program Files (x86)\\Internet Explorer\\iexplore.exe";
my $arg="";

Win32::Spawn( $prog, $arg, $pid );
注意:我无法以“本地系统帐户”的形式运行该windows服务,该帐户有一个选项“允许服务与桌面交互”,出于其他原因,我必须在所附的pic中指定用户名,但我使用相同的帐户(aa\tour)登录到计算机

有没有办法在前景中看到iexplore窗口?谢谢。

没有。您遇到了一个安全增强功能,它可以防止从Windows服务启动的应用程序显示在“普通”用户的桌面上。曾几何时(在Windows Vista之前),该设置将使您的IE窗口显示在控制台会话上,但随着隔离的实施,它不再像人们所期望的那样工作