如何:调试部分信任的应用程序

更新:2007 年 11 月

本主题适用于:

版本

Visual Basic

C#

C++

Web Developer

速成版

主题适用 主题适用 主题不适用 主题不适用

标准版

主题适用 主题适用 主题不适用 主题不适用

专业团队版

主题适用 主题适用 主题不适用 主题不适用

表格图例:

主题适用

适用

主题不适用

不适用

主题适用,但命令默认情况下隐藏

默认情况下隐藏的一条或多条命令。

适用于 Windows 应用程序和控制台应用程序。不适用于智能设备。

ClickOnce 部署 使得以下部分信任的应用程序容易部署,这些应用程序利用 代码访问安全性 来限制对计算机资源的访问。

部分信任的应用程序有可能难以调试,因为这些应用程序的安全权限随安装地点的不同而不同,因此其行为也各不相同。如果从 Internet 进行安装,则部分信任的应用程序只会有极少的权限; 如果从本地 Intranet 进行安装,则会有更多的权限;如果从本地计算机安装,则会有完全权限。您还可以有自定义区域和自定义权限。您可能需要在以上任何一个条件或所有条件下对部分信任的应用程序进行调试。Visual Studio 幸好也能使这些工作变得容易。

在 Visual Studio 中启动调试会话之前,可以选择模拟从哪个区域安装的应用程序。启动调试以后,应用程序将具有某些权限,这些权限相应于从该区域安装的部分信任的应用程序。这样,您看到的应用程序的行为就是从该区域下载应用程序的用户看到的行为。

如果应用程序试图执行它无权执行的操作,则会发生异常。此时,异常助手可以为您提供添加额外权限的机会,这样,您就可以具有足够的权限重新启动调试会话,以避免出现问题。

您可以在以后返回并查看自己在调试期间添加了哪些权限。如果您在调试期间必须添加权限,则可能表示您需要在代码中相应的点添加“用户同意提示”。

说明:

调试器可视化工具要求比部分信任的应用程序允许的特权更大的特权。在部分信任的代码中停止时,可视化工具不会加载。若要使用可视化工具进行调试,必须运行完全信任的代码。

为部分信任的应用程序选择一个区域

  1. 从“项目”菜单中选择“项目名 属性”。

  2. 在 项目名 属性页中单击“安全”页。

  3. 选择“启用 ClickOnce 安全设置”。

  4. 在“将要从中安装应用程序的区域”下单击下拉列表框,然后选择您要从中安装应用程序的区域。

    “应用程序要求的权限”网格将显示出所有可用权限。选中标记指示授予应用程序的权限

  5. 如果您选择的区域是“(自定义)”,则在“权限”网格的“设置”列中选择正确的自定义设置。

  6. 单击“确定”关闭属性页。

当发生安全异常时添加额外权限

  1. “异常助手”对话框出现,并带有消息:SecurityException was unhandled。

  2. 在“异常助手”对话框的“操作”下,单击“向项目添加权限”。

  3. 出现“重新启动调试”对话框。

    • 如果要使用新的权限重新启动调试会话,则单击“是”。

    • 如果不希望重新启动,则单击“否”。

查看调试时添加的额外权限

  1. 从“项目”菜单中选择“项目名 属性”。

  2. 在 项目名 属性页中单击“安全”页。

  3. 查看“应用程序要求的权限”网格。您添加的任何额外权限在“包括”列中有两个图标:一个是正常的选中标记,所有包括的权限都有该标记;另一个是附加图标,看上去像一个含有字母“i”的气球。

  4. 使用垂直滚动条查看整个“应用程序要求的权限”网格。

请参见

任务

ClickOnce 示例

概念

调试器安全

其他资源

ClickOnce 部署

代码访问安全性