如何在Intranet上部署WPF 4 Full Trust XBAP?

时间:2010-05-06 13:32:35

标签: wpf iis visual-studio-2010 clickonce xbap

我无法从内部网运行使用Visual Studio 2010创建的完全信任WPF 4 XBAP(浏览器应用程序)。我没有得到ClickOnce提升,如ScottGu在WPF 4上的post所述:

  

完全信任XBAP部署

     

从WPF 4开始,还为Intranet和受信任区域中的XAML浏览器应用程序(XBAP)启用了ClickOnce提升提示,从而可以更轻松地部署完全信任的XBAP。对于要求安全权限大于Intranet和受信任区域的最小代码访问安全性(CAS)权限授予集的XBAP,用户可以在ClickOnce提升单击时单击“运行”,导航到XBAP以允许XBAP以所请求的权限运行。

相反,我收到了“未被授予信任”的消息。

我正在以两种方式运行应用程序;在这两种情况下,我都会收到“Trust Not Granted”消息。首先,我通过双击本地网络上的NAS上的xbap文件来启动应用程序。其次,我也尝试在同一台机器上通过IIS托管在网站上时启动该应用程序。这两种情况都被认为是从“内部网”运行的吗?或者“内联网”是否特别意味着某些?或者我做错了什么?

值得注意的是,当我只是双击本地计算机上的xbap时,我可以毫无问题地启动应用程序。

有问题的xbap专门用于测试ClickOnce提升提示。它是使用Visual Studio 2010作为WPF浏览器应用程序创建的。我做的唯一更改是将其更改为完全信任的应用程序(我的项目>安全选项卡>这是一个完整的信任应用程序)。

在发布向导中,我选择以下内容:

  1. 您想在哪里发布该应用程序? - 我选择发布到本地目录
  2. 用户如何安装应用程序? - 我选择“从CD-ROM或DVD-ROM”
  3. 该应用程序是否可以脱机使用 - 所有选项都显示为灰色

4 个答案:

答案 0 :(得分:2)

“Intranet”由互联网选项中的安全区域设置定义:

Local intranet settings

答案 1 :(得分:1)

您是否正在签署部署?进入“签名”选项卡并创建测试证书(带密码)并使用它来签署部署。除非因为XBAP应用程序来自互联网区域而签名,否则它不会升级为完全信任。

答案 2 :(得分:1)

我在xbap faq中读到了这种情况,因为浏览器的弹出窗口已关闭。

答案 3 :(得分:1)

或.net Framework 4未安装,今天出现此问题。它不会发出警告或显示特定错误,只是信任未被授予。