首页 > 解决方案 > Powershell脚本映射驱动器,持久连接不起作用

问题描述

下面的代码允许我在需要时映射适当的网络驱动器。

我遇到的问题是当我重新启动计算机时,映射的驱动器丢失了。所以我需要再次运行脚本。

$Net = New-Object -ComObject WScript.Network  
$Rename = New-Object -ComObject Shell.Application

#### # Map the network drives
$Net.MapNetworkDrive("A:", '\\192.168.1.10\NAS1\Automate')
$Net.MapNetworkDrive("G:", '\\10.0.0.1\NAS1\VidePro')  

timeout 4

#### # Rename everything
Write-Host "Naming all mapped driver correctly"
$rename.NameSpace("A:\").Self.Name = 'AutoMate 1Gbit' 
$rename.NameSpace("G:\").Self.Name = 'VidPro 10Gbit'

我尝试了以下代码,不幸的是它不起作用:

$Net.MapNetworkDrive("A:", '\\192.168.1.10\NAS1\Automate' -Persist)
$Net.MapNetworkDrive("A:", '\\192.168.1.10\NAS1\Automate' -Persistant)
$Net.MapNetworkDrive("A:", '\\192.168.1.10\NAS1\Automate', -Persist)
$Net.MapNetworkDrive("A:", '\\192.168.1.10\NAS1\Automate' '-Persist'

我不确定我在这里缺少什么。

就像旁注一样。上述脚本中没有凭据,因为我通常先登录并登录凭据,然后运行脚本。只是代表我采取的额外安全措施。

谢谢你。

标签: powershellmapped-drive

解决方案


这应该可以解决问题:

$NPSDArgs = @{Name       = "A" 
              PSProvider = "FileSystem"
              root       = "\\192.168.1.10\NAS1\Automate" 
              Persist    = $True
             }

New-PSDrive @NPSDargs

要卸下驱动器:

Remove-PSDrive -Name "A"

高温高压


推荐阅读