您是否可以强制Silverlight仅在浏览器外运行?
编辑:我问的原因是因为很多Silverlight的功能只适用于OOB。如果我的应用程序依赖于此,我需要要求Silverlight应用程序以该模式运行或选择其他内容。答案 0 :(得分:9)
如果在Application_Startup
中使用它,即使在App.Xaml.cs中也是如此: -
private void Application_Startup(object sender, StartupEventArgs e)
{
if (IsRunningOutOfBrowser)
{
this.RootVisual = new MainPage();
}
else
{
this.RootVisual = new PleaseRunOOB():
}
}
现在创建一个名为PleaseRunOOB
的非常简单的UserControl,向用户呈现安装和/或运行应用程序的OOB版本的需要。
答案 1 :(得分:4)
新的OOB模型存在的附加功能是不能从网页(如版本3)安装应用程序,而是从命令行(具有XAP文件可用)安装应用程序。 Silverlight 4 OOB启动程序具有新的命令行参数,可以在“仿真模式”下安装,卸载和执行应用程序 - 无需安装。
例如。要在桌面上安装应用程序,请使用以下命令:
"%ProgramFiles(x86)%\Microsoft Silverlight\sllauncher.exe" /overwrite /install:"X:\PACKAGE_LOCATION\SL4Features.Web\ClientBin\APPLICATION.xap"
/origin:http://ORIGINAL_LOCATION/ORIGINAL_HOSTING_PAGE /shortcut:desktop
要卸载它,请使用以下命令:
"%ProgramFiles(x86)%\Microsoft Silverlight\sllauncher.exe" /overwrite /uninstall:"X:\PACKAGE_LOCATION\APPLICATION.xap"
/origin:http://ORIGINAL_LOCATION/ORIGINAL_HOSTING_PAGE /shortcut:desktop
要在不安装应用程序的情况下运行应用程序(在仿真模式下),请使用以下命令:
"%ProgramFiles(x86)%\Microsoft Silverlight\sllauncher.exe" /overwrite /emulate:"X:\PACKAGE_LOCATION\APPLICATION.xap" /origin:http://ORIGINAL_LOCATION/