在浏览器中显示Silverlight应用程序从Win2008上的批处理文件

时间:2009-08-12 07:20:13

标签: silverlight powershell windows-server-2008

我正在尝试从Windows Server 2008上的批处理文件中打开带有Silverlight应用程序的网页。

如果我把它放在批处理文件中:

start iexplore http://www.google.com

谷歌页面显示。

如果我把它放在批处理文件中(TestPage有Silverlight应用程序):

start iexplore http://www.mysite.com/Configure/TestPage.html

页面显示但是带有“下载Silverlight”图标/链接。

如果我手动浏览该页面,则会显示应用程序。

关于如何解决这个问题的任何想法?

我正在尝试在我们的构建计算机(Windows Server 2008)上运行我的Silverlight测试(实际上使用PowerShell,但症状相同,批处理文件更容易解释)。

编辑:看起来像这是因为批处理脚本运行的是64位版本的IE。当我以用户身份启动链接时,我获得了32位版本。

在我的PoweShell脚本中,我使用它来访问IE:

$ie = new-object -com "InternetExplorer.Application" 

- 但它也是64位版本。

所以真的,我的问题是如何通过COM获得32位版本的IE?

1 个答案:

答案 0 :(得分:1)

我偶然发现了一个简单的方法。我从

更改了调用脚本
        <Exec IgnoreExitCode="True" Command="powershell 
.\RunSilverlightTests.ps1 '$(DeploymentAddress)\TestPage.html'" >

        <Exec IgnoreExitCode="True" Command="%windir%\SysWoW64\cmd.exe /C 
powershell "& '.\RunSilverlightTests.ps1' 
'$(DeploymentAddress)/TestPage.html'"" >

这将运行WOW(Windows on Windows = 32bit)版本的脚本 命令行:因此PowerShell自动提供32位版本 的DLL。

您可以从%windir%\ SysWoW64 \ cmd.exe运行简单的批处理文件,它也可以运行。

花了3天,但我到了那里:)

干杯

标记