映射的网络驱动器未显示在“我的电脑”中

Mapped network drives are not showing in My Computer

我正在尝试使用 PowerShell 5.0 创建外部网络驱动器。我需要那些驱动器才能显示在我的电脑中。 为此,我正在使用这个跟随命令。

New-PSDrive -Name "X" -PSProvider FileSystem -Root "\192.168.0.1\hde_path" -Persist

这个命令有什么问题吗?因为根据我的理解,如果我使用 -Persist 它应该显示在我的电脑 window.

使用后,映射的驱动器 X: 未显示在我的电脑中。

欢迎使用 Windows10 和强制用户帐户控制的无尽问题。

您会注意到,如果您在计算机中映射网络驱动器,然后 运行 PowerShell 作为管理员,您将无法访问这些驱动器。我假设反之亦然。

不幸的是,没有办法关闭这个 "feature",至少在不破坏其他一切的情况下是这样。您只需管理 运行 PowerShell 的访问级别,因为映射网络驱动器必须在用户级别完成。

我遇到了同样的问题。我的解决方案是在 "Normal-Mode" 而不是 "Administrator-Mode" 中启动 powershell ISE(PS 运行 作为管理员)。我不知道为什么会出现这种现象,但是在我运行 Normal-Mode 中的powershell ISE 之后,驱动器显示在资源管理器中。 问候

当我从脚本 运行 执行此操作时,它不起作用,因为会话在脚本完成时过期。

当我粘贴到 PowerShell window 时有效,然后我可以看到共享出现在这台电脑中

我想你把命令放在 ps1 文件里了。正如这篇官方文章中所解释的: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/new-psdrive

你有两个解决方案:

  1. 您在调用 ps1 文件之前添加一个前导点。假设您的 ps1 文件名为 MyDrive.ps1。你必须 运行:
    . .\MyDrive.ps1

  2. 您必须在命令中使用 -Scope Global 参数。你的代码应该是

    New-PSDrive -Name "X" -PSProvider FileSystem -Root "\192.168.0.1\hde_path" -Scope Global -Persist

祝你好运

全部 说你应该使用 -Persistent or/and -Scope 'Global' 的答案是 错误的 当您想在文件资源管理器中查看驱动器时的情况。

甚至 Microsoft Docs 中的文档也是错误的

PSDrive 映射没用。您可以将网络路径保存在 $Z 中并在脚本中将其用作路径,但用户需要在文件资源管理器中进行映射。这种情况不包括...很容易。

其他方式,例如 (New-Object -ComObject "Wscript.Network").MapNetworkDrive("Z:", "\192.168.20.100\share", $True)New-SmbMapping -LocalPath 'Z:' -RemotePath "\192.168.20.100\share" 对我不起作用。

您可以发挥创意,学习如何使用 windows 进行操作并自动创建 UI 映射。