gpt4 book ai didi

visual-studio-2010 - CAS 不适用于 VS2010 映射驱动器

转载 作者:行者123 更新时间:2023-12-04 06:16:30 24 4
gpt4 key购买 nike

我有一个使用 subsonic 的项目,该项目是在 C: 驱动器上的 Visual Studio 2008 中开发的。没有问题。
我刚刚升级到 Visual Studio 2010(并且由于我的计算机巧合地死了,我现在正在运行使用 VirtualBox 虚拟化的 Windows XP)。

该项目在 C: 驱动器上运行时没有任何提示,但如果我从 G:(指向基本 PC 上的分区的映射驱动器)运行它,我将无法运行 subsonic 使用的自定义工具(下面列出了错误),或者运行 Web 应用程序(“开始而不调试”给我:无法开始监视对“G:\GPNNT\GpnntApp\GpnntApp”的更改)。

这是 .net 3.5 解决方案。

enter image description here

这似乎是一个有据可查且简单明了的问题。
我采取了以下措施:

(1) 批处理文件

c:
cd "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727"
caspol -all -reset
caspol -q -machine -addgroup 1 -url file:////g:\* FullTrust -name "G Drive"
caspol -q -machine -addgroup 1 -url g:\* FullTrust -name "G Drive 1"


c:
cd "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319"
caspol -all -reset
caspol -q -machine -addgroup 1 -url file:////g:\* FullTrust -name "G Drive"
caspol -q -machine -addgroup 1 -url g:\* FullTrust -name "G Drive"

pause

(我尝试了无数种不同的 url 格式,但都无济于事)

(2) .Net 2.0 配置实用程序(控制面板 > 管理工具)

使用分析工具,上述批处理文件中的两个设置似乎都适用于驱动器上的文件。
我还尝试将 Intranet 组设置为 FullTrust(我不想这样做!)。没有不同。

(3) loadFromRemoteSources

可以合理地假设,虽然项目本身只使用 .NET 2,但 VS2010 本身可能在内部使用 .NET 4。经过更多的谷歌搜索(例如 here ),我补充说

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


到两个 .net 版本的 machine.config 文件。

(4) 升级到VS2010 SP1

这些都没有产生任何区别。
在我的血压达到危险的高水平之前,任何人都可以阐明这一点吗?我想我可以回到 C: 上运行所有东西,但在这个虚拟化时代,这似乎有点荒谬。我真的希望将数据放在与 VM 不同的位置。

我记 this SO post 有同样的问题,并归咎于测试项目,这不是非常令人满意。我也没有测试项目,尽管我想可能在 SubSonic dll 中隐藏了测试引用。

最后一分钟添加:我还注意到 SQL Server 2005/8 不会与 G: 对话(例如,从那里恢复备份),并假设任何解决方案也会允许这种情况发生。那将是另一个很棒的东西。

最佳答案

为了后代,这里是我调查的一些结果。

VS 2010 中的映射驱动器:

  • 有关于从不安全的加载项目的初始消息
    地点。如上所述,这是使用 CASPOL 修复的。卡斯波尔很漂亮
    其 URL 灵活,并接受显示的两种格式。 CASPOL 是
    默认情况下在 .NET 4 中禁用,因此设置不会产生影响(请参阅原因 here)。
  • 之后还有几个问题,我没有记录它们,但是在修复了每个问题之后,另一个问题又出现了。 loadFromRemoteSources 修复了一条消息,但我所做的一切都无法触及“无法开始监视更改...”。作为其中的一部分,Christoph 的回答可能是正确的(至少对于 .NET 2),因为您可能必须在驱动器上设置每个程序集,这对于 VS 项目驱动器来说是完全不切实际的。

  • 因此,毫不奇怪,我认为将 VS 项目存储在映射驱动器上会太痛苦。源代码控制和本地项目是要走的路。坦率地说,在网络驱动器上缺乏撤消对开发工作和 IMO 来说都是一种痛苦。



    最初的问题并不是我需要一个网络驱动器,而是我不想将项目存储在我的 VM 的 C: 上(即。我希望能够与基于 VM 的驱动器镜像分开备份数据)。

    一直盯着我的答案是创建第二个虚拟磁盘并将其作为 G: 附加到 VM。这是一个本地驱动器,所以我没有遇到所有的信任问题,但我得到了完整的数据分离。我将该驱动器上的所有数据保存在一个 Dropbox 文件夹中,这也为我提供了完整的实时异地备份,这让我很高兴。

    关于visual-studio-2010 - CAS 不适用于 VS2010 映射驱动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7171176/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com