<loadFromRemoteSources> 元素

更新:2011 年 4 月

指定来自远程源的程序集是否应授予完全信任。

注意注意

如果由于 Visual Studio 项目错误列表中或生成错误中的错误消息,而定向到此主题,请参见如何:在 Visual Studio 中使用 Web 上的程序集

<loadFromRemoteSources  
   enabled="true|false"/>

特性和元素

以下几节描述了属性、子元素和父元素。

特性

特性

说明

enabled

必选特性。

指定加载自远程源的程序集是否应授予完全信任。

enabled 特性

说明

false

不要向来自远程源的应用程序授予完全信任。 这是默认值。

true

向来自远程源的应用程序授予完全信任。

子元素

无。

父元素

元素

说明

configuration

公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。

runtime

包含关于运行时初始化选项的信息。

备注

在 .NET Framework 3.5 版本和早期版本中,如果从远程位置加载一个程序集,则该程序集将作为部分信任的程序集运行,并获得与其加载自的区域相关的授权集。 例如,加载自某个网站的程序集会加载到 Internet 区域中并被授予 Internet 权限集。 换言之,将在 Internet 沙盒中执行这些程序集。 如果尝试在 .NET Framework 4 版 中运行该程序集,会引发异常;必须为程序集显式创建一个沙盒,或在完全信任环境下运行它。

利用 <loadFromRemoteSources> 元素,您可以指定在早期版本的 .NET Framework 中作为部分信任的程序集运行的程序集在 .NET Framework 4 中作为完全信任的程序集运行。

注意注意

如果应用程序从 Web 复制,则它由 Windows 标记为 Web 应用程序,即使它驻留在本地计算机上。通过更改文件属性,您可以更改该标记,也可以使用 <loadFromRemoteSources> 元素对程序集授予完全信任。

此元素的 enabled 特性仅在禁用代码访问安全性 (CAS) 时有效。 默认情况下,.NET Framework 4 和更高版本中会禁用 CAS 策略。 如果将 enabled 设置为 true,则会将远程应用程序作为完全信任的应用程序运行。

如果未将 <loadFromRemoteSources> enabled 设置为 true,则在以下情况下会引发异常:

  • 当前域的沙盒行为与其在 .NET Framework 3.5 中的沙盒行为不同。 这要求禁用 CAS 策略,并且当前域不进行沙盒处理。

  • 所加载的程序集不是来自 MyComputer 区域。

注意注意

当您尝试从承载计算机上的链接文件夹加载文件时,您可以在 Windows Virtual PC 应用程序中获取 FileLoadException。当您尝试从与 Remote Desktop Services(远程桌面服务)链接的文件夹载入文件时,可能也会发生此错误(终端服务)。若要避免此异常,请将 enabled 设置为 true

将 <loadFromRemoteSources> 元素设置为 true 可防止出现此异常。 可利用此元素指定,您不依赖于公共语言运行时来对加载的程序集进行沙盒处理以确保安全,并指定可以将这些程序集作为完全信任的程序集运行。

重要说明重要事项

如果不应在完全信任环境下运行该程序集,请不要设置此配置元素,而应创建一个在其中加载该程序集的沙盒化 AppDomain

配置文件

此元素只可用于应用程序配置文件中。 更多信息,请参见 配置文件 中的“应用配置文件”一节。

示例

下面的示例演示如何从远程源对应用程序授予完全信任。

<configuration>
   <runtime>
      <loadFromRemoteSources enabled="true"/>
   </runtime>
</configuration>

请参见

参考

运行时设置架构

其他资源

.NET Framework 的配置文件架构

修订记录

Date

修订记录

原因

2011 年 4 月

有关使用应用程序配置文件中的元素的最新信息。

客户反馈