2

我想如果在窗口中不使用简单图形以外的任何东西,我将能够在部分信任中运行独立的 WPF 应用程序(至少在 Intranet 上)。但不幸的是,即使是最简单的 Hello World 应用程序也无法加载主窗口并在以部分信任运行时崩溃。

任何人都可以解释为什么会发生这种情况,甚至理论上是否可能?

PS Simplest 控制台应用程序可以在 Intranet Zone 中以部分信任的方式运行,Winforms 可以在 Intranet 和 Internet 中运行(尽管在 Intranet Zone 中运行时会显示安全警告)

4

1 回答 1

2

在玩了一些之后,我发现我的问题是我尝试我的应用程序在调试器下运行。无需调试,简单的 WPF 应用程序可以在 Internet 和 Intranet 区域中正常运行。

调试时,WPF 应用程序需要对区域的默认设置额外的权限。这些权限是:

  • 允许在 Intranet 和 Internet 中调用非托管程序集(安全权限)。仍然不确定为什么这与 WinForms 不同,以及它在调试模式下需要什么非托管程序集。
  • Internet 区域中的所有窗口和事件(UI 权限)。

如果设置了这两个权限,则可以在部分信任中调试 WPF 应用程序。只是不要忘记在编译发布时重置权限!

于 2009-10-30T15:29:44.260 回答