Estoy intentando desmontar una unidad USB externa con PowerShell y no puedo hacerlo con éxito. El siguiente script es lo que uso:
#get the Win32Volume object representing the volume I wish to eject
$drive = Get-WmiObject Win32_Volume -filter "DriveLetter = 'F:'"
#call dismount on that object there by ejecting drive
$drive.Dismount($Force , $Permanent)
Luego verifico mi computadora para verificar si la unidad está desmontada pero no lo está.
Los parámetros booleanos $ force y $ permanent se han probado con diferentes permutaciones en vano. El código de salida devuelto por el comando de desmontaje cambia cuando se activan los parámetros.
(0,0) = exit code 0
(0,1) = exit code 2
(1,0) = exit code 0
(1,1) = exit code 2
La documentación para el código de salida 2 indica que hay puntos de montaje existentes como una razón por la cual no se puede desmontar. Aunque estoy tratando de desmontar el único punto de montaje que existe, así que no estoy seguro de lo que este código de salida intenta decirme.
Después de haber rastreado la web para personas que experimentan problemas similares, solo he encontrado un comando adicional para probar y ese es el siguiente:
# executed after the .Dismount() command
$drive.Put()
Este comando adicional no ayuda.
Me estoy quedando sin cosas para probar, por lo que cualquier ayuda que alguien me pueda dar sería muy apreciada.