如何修改我的设置以允许 VS2010 从“未经授权的区域”加载第 3 方 XSD 文件?

问题描述 投票:0回答:4

我在 Visual Studio 2010 中打开了第 3 方 XSD 文件,该文件从同一第 3 方的其他架构文件导入命名空间。

在架构文件的 XML 编辑器视图中,xs:import 元素带有下划线,并显示以下错误:请求类型为“System.Security.Permissions.FileIOPermission”的权限,mscorlib,Version=4.0.0.0,Culture=neutral , PublicKeyToken=b77a5c561934e089' 失败。

我阅读了以下博客文章:Link,其中指出这是安全区域违规,Visual Studio 将架构放置在 XML 架构资源管理器中的“未经授权的区域”中。

我的问题是 - 如何更改我的安全设置以允许引用这些模式,或者我可以做些什么来使与它们关联的模式和命名空间“受信任”?

visual-studio-2010 xsd unauthorized zone
4个回答
49
投票

我自己也遇到过这个问题 - 实际上是因为 Win 7 阻止了架构文件,因为它们是从网络位置复制的。

要取消阻止单个文件,请导航到该文件并使用“属性”>“取消阻止” enter image description here

对于多个文件,最快的方法是使用 Sysinternals 的 Stream 批量更改位置,如本博客文章中所述。


10
投票
使用Powershell命令提示符:

Get-Item "C:\<path to folder with blocked files>\*\*.*" | Unblock-File

https://technet.microsoft.com/en-us/library/hh849924.aspx


1
投票
我也遇到过同样的情况,我没有解锁按钮。就我而言,帮助了以下内容 如果Windows策略不允许解锁。

    尝试存档文件,例如。本地驱动器中包含 7zip(但不是任何共享驱动器,也不是 Onedrive/Dropbox/等目录。因为这些软件可以根据系统配置向文件添加区域)。
  1. 然后将存档解压到另一个本地目录
  2. 文件现在应该没有未经授权的区域。

0
投票
该线程中的方法都不适合我。我没有“解锁”按钮,powershell 命令不起作用,而且 7zip 不是我雇主批准的软件。所以我想我应该尝试相当于 Windows 中的

chmod 777

。我通过以管理员身份打开命令提示符并输入以下内容,获得了架构目录中 xsd 文件的所有权并打开了权限:

takeown /f D:\schema\* /r icacls D:\schema\* /grant Everyone:F /t
这解决了我的问题,我能够成功生成我的架构。希望这对将来的一些灵魂有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.