如何映射网络驱动器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何映射网络驱动器相关的知识,希望对你有一定的参考价值。
参考技术A 分类: 电脑/网络 >> 互联网解析:
在 Windows XP 中连接和断开网络驱动器。您可以将驱动器号映射到网络上的任何共享资源。这样无论从 Windows XP 用户界面还是从命令行,都能更加便捷地访问共享资源。每个映射驱动器在“我的电脑”中都有一个图标,并且在 Windows 资源管理器的左窗格中列出(如果在“我的电脑”中使用“文件夹”视图,它也会在左窗格中列出)。Windows 提供了多种映射驱动器的方法。
一、从“网上邻居”连接驱动器
可以从“网上邻居”中选择一个共享资源:
1. 依次单击开始、网上邻居、整个网络,然后双击 Microsoft Windows 网络。
2. 双击要打开的域。
3. 双击要映射的共享资源所在的计算机。该计算机的所有共享资源将自动显示在窗口中。
4. 右键单击要映射的共享驱动器或文件夹,然后单击映射网络驱动器。
5. 在“映射网络驱动器”对话框中,单击要使用的驱动器号,然后指定是否在每次登录计算机时都重新连接该共享资源。
注意:映射的网络驱动器使用的驱动器号从 Z 开始,它是您创建的第一个映射驱动器的默认驱动器号。不过,如果您想使用 Z 之外的字母,也可以选择另一个字母。
6. 单击完成。Windows XP 将打开一个窗口,其中显示已映射资源的内容。
二、从“我的电脑”或 Windows 资源管理器连接驱动器
可以从“我的电脑”或 Windows 资源管理器映射驱动器:
1. 在工具菜单上,单击映射网络驱动器。
2. 在驱动器框中,单击某个驱动器号。
3. 在文件夹框中,以 \\服务器名称\共享名称 的形式键入服务器和共享资源的 UNC 路径,或单击浏览以查找计算机和共享资源。
4. 可以映射共享驱动器和共享文件夹。除非权限禁止,否则访问共享驱动器或文件夹时也可访问其中的子文件夹。不过,无法将尚未明确配置为共享资源的子文件夹映射为网络驱动器。
三、使用 Net Use 命令映射或断开驱动器
使用 use 命令对批处理文件和脚本可能很有用。要使用 use 命令映射或断开驱动器,请按照下列步骤操作: • 要映射网络驱动器,请使用 use x:\\计算机名称\共享名称 命令,其中 x: 是要分配给共享资源的驱动器号。
• 要断开映射的驱动器,请使用 use x:/delete 命令,其中 x: 是共享资源的驱动器号。
如何使用 System.IO.DirectoryInfo 访问映射的网络驱动器?
【中文标题】如何使用 System.IO.DirectoryInfo 访问映射的网络驱动器?【英文标题】:How can I access a mapped network drive with System.IO.DirectoryInfo? 【发布时间】:2008-09-25 14:24:26 【问题描述】:我需要在映射的网络驱动器上创建一个目录。我正在使用代码:
DirectoryInfo targetDirectory = new DirectoryInfo(path);
if (targetDirectory != null)
targetDirectory.Create();
如果我指定“\\\\ServerName\\Directory”之类的路径,一切正常。如果我将“\\ServerName\Directory”映射为,例如驱动器 Z:,并指定“Z:\\”之类的路径,则会失败。
创建 targetDirectory 对象后,VS 显示(在调试模式下)targetDirectory.Exists = false,并且尝试执行 targetDirectory.Create() 会引发异常:
System.IO.DirectoryNotFoundException: "Could not find a part of the path 'Z:\'."
但是,相同的代码适用于本地目录,例如C:。
该应用程序是 Windows 服务(WinXP Pro、SP2、.NET 2),在与映射驱动器的用户相同的帐户下运行。 Qwinsta 回复说用户的会话是会话 0,所以它和服务的会话是同一个会话。
【问题讨论】:
Is z: 肯定被映射到常规共享或管理共享,例如C$、D$ 等 【参考方案1】:映射的网络驱动器是特定于用户的,因此如果应用程序在与创建映射驱动器号 (z:) 的用户不同的身份下运行,它将无法工作。
【讨论】:
这也是我的答案。我突然在 Visual Studio 中遇到了以前从未见过的错误,遇到同样错误的人写道,您必须以管理员身份运行 VS(我认为我以前从未做过,因为是管理员组的一部分已经在我自己的电脑上)。这是后天,我忘记了。为我可以在前一天复制的文件获取此路径错误...谢谢 Kev! @AndreasJansson - 很高兴我能 :)【参考方案2】:基于事实,映射驱动器号不起作用,简单的解决方案是输入完整的网络路径。
阿卡,
我的R:/
驱动器被映射到\\myserver\files\myapp\
所以而不是使用
"R:/" + "photos"
使用
"\\myserver\files\myapp\" + "photos"
【讨论】:
使用完整网络路径的一个问题是它增加了文件路径的长度,因此“R:\...\FileA.txt”可能适用于复制、删除等,但是"\\myserver\files\myapp\...\FileA.txt" 可能会因为路径太长而失败。 这对我不起作用。我正在尝试映射 Azure 文件共享。使用我得到的驱动器号:“找不到路径 Q:\ 的一部分”,如果我使用 UNC 路径,我得到:“用户名或密码不正确。” @DanCsharpster 在我看来它正在工作。但是您提供的用户名或密码无效...否则您将无法找到路径。【参考方案3】:运行您的应用程序的帐户可能无权访问映射的驱动器。如果这是一个 Web 应用程序,那肯定是问题...默认情况下,一个 Web 应用程序在 NETWORK SERVICE 帐户下运行,该帐户没有任何映射驱动器设置。尝试使用模拟来查看它是否可以解决问题。尽管您可能需要找出比仅使用模拟更好的解决方案。如果是我,我会坚持使用 UNC 路径。
【讨论】:
UNC 路径是对我有用的快速修复。对于那些不知道的人,这是这样的路径:\\server1\folder1\folder2\file.pdf - 请记住,对于 c# 字符串,您需要像这样 \\\\server1转义反斜杠>【参考方案4】:您是否使用与程序运行时完全相同的凭据进行映射?
【讨论】:
【参考方案5】:您是否在 Vista/Server 2k8 上运行?这两个都将服务隔离到会话 0 中,第一个交互式会话是会话 1。有关会话隔离的更多信息 here。因此,即使是同一用户同时用于服务和交互式登录,也会是不同的会话。
【讨论】:
【参考方案6】:您可以尝试使用WNetConnection 将映射的驱动器解析为网络路径。
【讨论】:
非常有帮助,谢谢【参考方案7】:我在 Win Server 2012 上遇到了同样的问题。禁用 UAC 解决了它。
【讨论】:
以上是关于如何映射网络驱动器的主要内容,如果未能解决你的问题,请参考以下文章