小编use*_*235的帖子

使用 PowerShell 弹出/卸载驱动器

我想通过 PowerShell 弹出/卸载外部 USB 驱动器。

意思是,我想准确复制这些 UI 操作的行为(通过 Windows UI 弹出驱动器):

通过 Windows UI 弹出驱动器

目前我正在使用这个脚本:

$drive_letter="G"
$vol = get-wmiobject -Class Win32_Volume | where{$_.Name -eq $drive_letter+":\"}  
$vol.DriveLetter = $null
$vol.Put()  
$vol.Dismount($false, $false)
Run Code Online (Sandbox Code Playgroud)

但是,当我再次连接驱动器时,它不会显示在驱动器列表中。我认为这是因为驱动器号与驱动器的 GUID 相关联,并且因为:$vol.DriveLetter = $null

我也尝试过这个:

$driveEject = New-Object -comObject Shell.Application
$driveEject.Namespace(17).ParseName("G:").InvokeVerb("Eject")
Run Code Online (Sandbox Code Playgroud)

但没有成功。

对于它的价值,$driveEject.Namespace(17).ParseName("G:")回报:

Application  : System.__ComObject
Parent       : System.__ComObject
Name         : Backup (G:)
Path         : G:\
GetLink      :
GetFolder    : System.__ComObject
IsLink       : False
IsFolder     : True
IsFileSystem : True
IsBrowsable  : False
ModifyDate   : 12/30/1899 12:00:00 …
Run Code Online (Sandbox Code Playgroud)

eject powershell hard-drive external-hard-drive windows-10

8
推荐指数
1
解决办法
9948
查看次数