【问题标题】:.net 3.5 running over a intranet.net 3.5 在 Intranet 上运行
【发布时间】:2009-04-06 19:22:32
【问题描述】:

我有一个在 Intranet 上运行的 .net 3.5 应用程序,据我所知,它应该在映射驱动器上“运行”,但我得到一个 SecurityException 类型“FileIOPermission”,当我调用时会发生这种情况

File.Open(mCurrentFile, FileMode.Create, FileAccess.Write, FileShare.Read)

我可以在映射驱动器上创建文件,所以我确实有写权限.. 而且计算机不在域中..

我知道 2.0 应用程序不是从网络运行的,但据我所知 3.5 现在应该这样做,可能是系统 dll 是 v2.0 但没有 v3.5,所以我无法更改它...

【问题讨论】:

    标签: .net filesystems


    【解决方案1】:

    我认为您需要在这里澄清这个问题。我相信你混淆了两个不同的、不相关的东西:-

    1) 您的应用程序在尝试打开网络文件时遇到异常

    2) 如果驻留在网络共享上,应用程序可能无法执行。

    从您的问题看来,2) 不是问题,因为您可以运行您的应用程序。如果是这样,您应该从您的问题中删除对此的引用。

    如果确实只有 1) 是您的问题,那么在我看来,执行该进程的帐户没有从指定位置读取的权限。您需要确认两件事,a) 文件路径在执行时正确,b) 运行进程的帐户在该位置具有必要的权限。

    【讨论】:

    • 2) 没有问题,因为应用程序确实启动了。 1)如果我从创建共享的计算机和用户上的共享启动程序,我仍然会遇到异常......
    • 对不起,最后一句话没有任何意义
    【解决方案2】:

    Marc Gravell 您告诉我尝试 3.5 sp1,它确实有效,但我无法将您的回答标记为正确,因为您似乎删除了答案...

    【讨论】:

    • 哈哈 :) Marc G. 很好 - 他得到正确答案并不奇怪 :) 我很乐意接受他的观点 :P
    【解决方案3】:

    每台计算机都有权限设置,只要它们允许在从不同位置运行的 .NET 可执行文件中运行。我相信有本地计算机、LAN 和 Internet 的设置。我会尝试增加局域网的权限......如果这不起作用,请尝试互联网,以防万一。在XP的控制面板->管理工具中可以找到这个控制工具,Vista的就不清楚了。

    【讨论】:

      猜你喜欢
      • 2012-05-21
      • 2013-01-16
      • 1970-01-01
      • 2011-05-20
      • 2016-03-14
      • 2012-04-15
      • 1970-01-01
      • 2011-03-12
      • 2011-08-06
      相关资源
      最近更新 更多