J'essaie de démonter un lecteur USB externe à l'aide de PowerShell et je ne parviens pas à le faire. Le script suivant est ce que j'utilise:
#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)
Je vérifie ensuite mon ordinateur pour vérifier si le lecteur n'est pas monté, mais ce n'est pas le cas.
Les paramètres booléens $ force et $ permanent ont été essayés avec différentes permutations en vain. Le code de sortie renvoyé par la commande de démontage change lorsque les paramètres sont basculés.
(0,0) = exit code 0
(0,1) = exit code 2
(1,0) = exit code 0
(1,1) = exit code 2
La documentation du code de sortie 2 indique qu'il existe des points de montage existants comme raison pour laquelle il ne peut pas être démonté. Bien que j'essaie de démonter le seul point de montage qui existe, je ne sais pas ce que ce code de sortie essaie de me dire.
Ayant déjà parcouru le Web pour les personnes rencontrant des problèmes similaires, je n'ai trouvé qu'une seule commande supplémentaire à essayer et c'est la suivante:
# executed after the .Dismount() command
$drive.Put()
Cette commande supplémentaire n'aide pas.
Je suis à court de choses à essayer, donc toute aide que n'importe qui peut me donner serait grandement appréciée.