我正在尝试从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?
答案 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天,但我到了那里:)
干杯
标记