Sto tentando di smontare un'unità USB esterna utilizzando PowerShell e non riesco a farlo correttamente. Il seguente script è quello che 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)
Quindi controllo il mio computer per verificare se l'unità è smontata ma non lo è.
I parametri booleani $ force e $ permanent sono stati provati con diverse permutazioni senza risultati. Il codice di uscita restituito dal comando smonta cambia quando i parametri sono attivati.
(0,0) = exit code 0
(0,1) = exit code 2
(1,0) = exit code 0
(1,1) = exit code 2
La documentazione per il codice di uscita 2 indica che esistono punti di montaggio esistenti come motivo per cui non è possibile smontare. Anche se sto cercando di smontare l'unico punto di montaggio esistente, quindi non sono sicuro di cosa stia cercando di dirmi questo codice di uscita.
Avendo già esplorato il Web per persone con problemi simili, ho trovato solo un comando aggiuntivo da provare ed è il seguente:
# executed after the .Dismount() command
$drive.Put()
Questo comando aggiuntivo non aiuta.
Sto finendo le cose da provare, quindi qualsiasi tipo di assistenza che qualcuno può darmi sarebbe molto apprezzato.