问题标签 [unc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
27440 浏览

c# - 确定路径字符串是本地机器还是远程机器的方法

使用 C# 或其他 .NET 语言确定文件路径字符串是在本地计算机上还是在远程服务器上的最佳方法是什么?

可以使用以下方法确定路径字符串是否为 UNC:

这对于以 C:\ 或其他驱动器号开头的路径非常有用,但路径如下:

...两者都指本地计算机 - 这些是 UNC 路径,但仍然是本地的。

0 投票
2 回答
11495 浏览

c# - 从映射驱动器或共享文件夹运行 .NET 程序

我编写了一个 C# Windows Forms 应用程序,用于将一台机器上远程文件夹中的文件和文件夹(“源”文件夹是一个映射驱动器 - “Z:\folder”)与另一台机器上的另一个远程文件夹(“目标”文件夹是共享文件夹的 UNC 路径 - “\\computername\sharedfolder”)。我对这两个文件夹都有完全权限。当我在本地计算机上运行该程序时,它工作正常,但是当我尝试从源文件夹中运行它时,它会因安全异常而失败。

为目标文件夹(即 DirectoryInfo(@"\\computername\sharedfolder") 调用 DirectoryInfo 构造函数时发生故障。我认为问题是因为我正在从映射驱动器运行程序。有解决方法吗?


具体的例外是:请求“System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”类型的权限失败。


更新

好的,我将我的应用程序放入 Visual Studio 2008(之前在 2005 年编码),针对 .NET 3.5 框架,编译并再次尝试。

我得到了完全相同的错误。


更新 - 解决方案

我用 .NET 3.5 尝试过,但没有用,然后我注意到你说的是 3.5 SP1。肯定需要该服务包。

问题解决了。谢谢你。

0 投票
3 回答
2522 浏览

c# - IOException 使用 .NET 将大文件从 UNC 路径读取到字节数组中

我正在使用以下代码尝试从 UNC 路径将大文件 (280Mb) 读入字节数组

这与以下错误有关。

如果我使用本地路径运行它,它工作正常,在我的测试用例中,UNC 路径实际上指向本地框。

有什么想法吗?

0 投票
5 回答
29179 浏览

.net - 检查路径是 UNC 路径还是本地路径的正确方法是什么?

检查路径是否为 UNC 路径的最简单方法当然是检查完整路径中的第一个字符是字母还是反斜杠。这是一个好的解决方案还是可能有问题?

我的具体问题是,如果路径中有驱动器号,我想创建一个 System.IO.DriveInfo 对象。

0 投票
5 回答
5598 浏览

vbscript - 远程计算机上的 OpenTextFile

我正在尝试使用以下代码读取远程文本文件:

我下面的 deffilePath 扩展成这样的字符串:

"\\10.211.19.207\c$\Program Files\Common Files\Symantec Shared\VirusDefs\definfo.dat"

但是,我收到“Microsoft VBScript 运行时错误:错误的文件名或编号”。
可能是什么问题呢?

0 投票
3 回答
10762 浏览

.net - 如何将带有驱动器号的路径转换为 ​​UNC 路径

如何将带有驱动器号的路径转换为​​.NetW:\Path\Share中的等效 unc 路径?\\server\Share\File

您可以在命令提示符处运行net use,这将列出映射。我如何在 .Net 中获取该信息?

0 投票
1 回答
3853 浏览

.net - 在 ASP .NET 中访问 UNC 驱动器?

我有两组不同的图像文件,它们位于两个不同 Web 服务器上两个不同网站的根图像目录中。为了论证起见,假设第一个 Web 服务器称为 web1,主 IP 地址为 111.111.111.111,第二个 Web 服务器称为 web2,主 IP 地址为 111.111.111.112。

现在,我想在 web1 上编写一个从第一个网站读取文件的 Web 应用程序。我可以使用 System.IO 命名空间中的类轻松地做到这一点。但是如何才能为第二个 Web 服务器实现相同的功能。换句话说,我如何通过 UNC 以编程方式访问该目录并发送访问该驱动器中的资源所需的域用户帐户凭据。例如,我希望能够编写如下内容:Directory.GetFiles("\111.111.111.112\C$\inetpub\wwwroot\images", domain_user_name, domain_user_password)。理想情况下,我希望完成这项任务,而无需触及 Web 应用程序或 IIS 中的模拟设置。

有人有什么想法吗?

0 投票
9 回答
211353 浏览

c# - 使用凭证从远程、不受信任的域访问共享文件 (UNC)

我们遇到了一个需要解决的有趣情况,而我的搜索结果为零。因此,我向 SO 社区寻求帮助。

问题是这样的:我们需要通过远程文件共享/UNC 以编程方式访问不在我们域中且不在受信任的外部域中的共享文件。自然,我们需要向远程机器提供凭据。

通常,可以通过以下两种方式之一解决此问题:

  1. 将文件共享映射为驱动器并在那时提供凭据。这通常使用NET USE命令或重复的 Win32 函数来完成NET USE
  2. 使用 UNC 路径访问文件,就像远程计算机在域上一样,并确保在远程计算机上以本地用户身份复制运行程序的帐户(包括密码)。基本上利用了当用户尝试访问共享文件时 Windows 将自动提供当前用户的凭据这一事实。
  3. 不要使用远程文件共享。使用 FTP(或其他方式)传输文件,在本地处理它,然后将其传输回来。

由于各种原因,我们的安全/网络架构师拒绝了前两种方法。第二种方法显然是一个安全漏洞;如果远程计算机受到威胁,则本地计算机现在处于危险之中。第一种方法不能令人满意,因为新安装的驱动器是本地计算机上的其他程序在程序访问文件期间可用的共享资源。尽管这很可能使这个暂时性的,但在他们看来这仍然是一个漏洞。

他们对第三个选项持开放态度,但远程网络管理员坚持使用 SFTP 而不是 FTPS,而 FtpWebRequest 仅支持 FTPS。SFTP对防火墙更友好的选项,我可以使用几个库来实现这种方法,但如果可以的话,我更愿意减少我的依赖关系。

我在 MSDN 中搜索了使用远程文件共享的托管或 win32 方法,但我没有找到任何有用的方法。

所以我问:还有其他方法吗?我是否错过了一个超级秘密的 win32 功能,它可以满足我的需求?还是我必须追求选项 3 的一些变体?

0 投票
3 回答
9957 浏览

.net - .Net DriveInfo() 与 UNC 路径?

早上好,

有没有办法为 UNC 路径获取 DriveInfo 实例(例如“\fors343a.ww123.somedomain.net\folder\1\”),因为例如......

... 当使用上面的 UNC 路径时,会引发 ArgumentException(“对象必须是根目录 (\"C:\\") 或驱动器号 (\"C\")。")。

我将使用什么来检索有关该信息的信息,或者例如,我将如何检查给定文件夹是否驻留在本地驱动器或 unc 路径上?

0 投票
4 回答
1764 浏览

.net - IIS 6 with wildcard mapping and UNC virtual directory problem

On our production servers (win 2003 with IIS6 and load balanced with an F5 BIGIP), we have a problem when introducing wildcardmapping on IIS6. We use .net Framework 3.5 SP1.

The issue manifests itself as by the server only sometimes serving the images stored on a virtual directory pointing to a UNC path. Sometimes the images are displayed, and sometimes not. Removing the wildcard mapping solved this problem.

I will need wildcard mapping on the server for future features, so any help/pointers to if this is a known problem will be very helpful.

In advance, thanks for any help.

Edit: The exception it fails with is the following:

Message: Failed to start monitoring changes to '\ourFileServer\folder1\thumbnails' because the network BIOS command limit has been reached. For more information on this error, please refer to Microsoft knowledge base article 810886. Hosting on a UNC share is not supported for the Windows XP Platform. Source: System.Web Data: System.Collections.ListDictionaryInternal TargetSizeVoid .ctor(System.Web.DirectoryMonitor, System.String, Boolean, UInt32) StackTrace at System.Web.DirMonCompletion..ctor(DirectoryMonitor dirMon, String dir, Boolean watchSubtree, UInt32 notifyFilter)
at System.Web.DirectoryMonitor.StartMonitoring() at System.Web.DirectoryMonitor.StartMonitoringFile(String file, FileChangeEventHandler callback, String alias) at System.Web.FileChangesMonitor.StartMonitoringFile(String alias, FileChangeEventHandler callback) at System.Web.Configuration.WebConfigurationHost.StartMonitoringStreamForChanges(String streamName, StreamChangeCallback callback) at System.Configuration.BaseConfigurationRecord.MonitorStream(String configKey, String configSource, String streamname) at System.Configuration.BaseConfigurationRecord.InitConfigFromFile()