从浏览器应用程序ID中获取Silverlight

时间:2010-06-04 11:41:03

标签: silverlight silverlight-4.0 silverlight-oob

我正在尝试从网络浏览器启动SL4 OOB应用程序。我目前正在尝试通过将文件类型与sllauncher.exe相关联,然后将SL4 OOB应用程序ID添加为参数来实现此目的。从浏览器下载特定文件类型时启动SL4 OOB应用程序,但为了让我创建安装程序,我需要能够检索应用程序ID,以便我可以更新文件类型关联的注册表项。任何人都知道如何生成应用程序ID,或者是否可以强制使用特定的应用程序ID?

2 个答案:

答案 0 :(得分:1)

我担心这不容易...... 有一种方法 Deployment.GetAppIdForUri 听起来就像它完全符合您的需要,但遗憾的是它被标记为 SecurityCritical ,因此您无法使用它。

可能有用的黑客是这样的: 当应用程序安装了OOB时,您可以使用Application.Current.Host.Source或类似的东西加上一些子串魔法来获取应用程序ID。不幸的是,我现在无法测试,因为我现在正在这台机器上卸载VS2010 RC ;-) 无论如何,如果可行,您可以获取ID并将其写入IsoStore以供以后使用。

强制应用程序的特定ID会很好,但我认为这是不可能的。

干杯,亚历克斯

答案 1 :(得分:0)

Silverlight OOB应用程序的快捷方式文件包含应用程序ID。从快捷方式文件中检索应用程序ID对我来说很有用。