Ouvrir/fermer le lecteur CD avec un bat
RésoluLIAMSI3456 -
quelle est l'instruction qui permet d'ouvrir/fermer le lecteur CD dansun fichier batch BATou autre language supporté par windows (car je ne possède aucun compilateur)
merci
Configuration: Windows XP Internet Explorer 6.0
24 réponses
- 1
- 2
Le sujet concerne l'ouverture et la fermeture du lecteur CD à partir d'un fichier batch BAT ou d'un autre langage pris en charge par Windows, sans compilateur, sous Windows XP et IE6. Plusieurs contributions évoquent l'utilisation de VBScript chargé depuis le batch, notamment via l'objet WMPlayer.OCX pour éjecter le CD, et l'identification du lecteur avant d'agir. Certains scripts montrent comment ouvrir et fermer le tiroir, tandis que d'autres suggèrent des approches complémentaires avec un exécutable tiers comme nirCMD pour multiplier les actions et contourner les limites intégrées. À noter, VBScript est un langage non compilé exécuté par Windows Script Host, ce qui explique pourquoi ces scripts s'exécutent sans compilateur et peuvent être démarrés depuis un fichier batch.
-
Salut, jai trouver quelque chose,
tu peut lancer un .vbs depuis ton bat pour ouvrir le lecteur (pas le fermer)
voici le vbs
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
For i = 0 to colCDROMs.Count - 1
colCDROMs.Item(i).Eject
Next ' cdrom
End If -
salut pour ovrire et puis fermer votre lecteur mais s'il est deja ouvert il le ferme ....
g trouver ce tuto vbs
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
For i = 0 to colCDROMs.Count - 1
colCDROMs.Item(i).Eject
Next ' cdrom
colCDROMs.Item(d).Eject
End If
msgbox "hamza votre cd rom est fermer"
et sur cmd g trouver ce si
echo off && Cls && Mode 55,5 && Color 4f && Title Open Cd
Set VBS=%systemdrive%\OpenClose.vbs
Set VBS1=%systemdrive%\RemoveVBS.vbs
echo Preparing To Run The Script!
>> %vbs% Echo Dim ts
>> %vbs% Echo Dim strDriveLetter
>> %vbs% Echo Dim intDriveLetter
>> %vbs% Echo Dim fs 'As Scripting.FileSystemObject
>> %vbs% Echo Const CDROM = 4
>> %vbs% Echo On Error Resume Next
>> %vbs% Echo Set fs = CreateObject("Scripting.FileSystemObject")
>> %vbs% Echo strDriveLetter = ""
>> %vbs% Echo For intDriveLetter = Asc("D") To Asc("Z")
>> %vbs% Echo Err.Clear
>> %vbs% Echo If fs.GetDrive(Chr(intDriveLetter)).DriveType = CDROM Then
>> %vbs% Echo If Err.Number = 0 Then
>> %vbs% Echo strDriveLetter = Chr(intDriveLetter)
>> %vbs% Echo Exit For
>> %vbs% Echo End If
>> %vbs% Echo End If
>> %vbs% Echo Next
>> %vbs% Echo MSGBOX "YOUR CD IS: " ^& strDriveLetter,0 + 48,"CDROM=> " ^& strDriveLetter
>> %vbs% Echo Set oWMP = CreateObject("WMPlayer.OCX.7" )
>> %vbs% Echo Set colCDROMs = oWMP.cdromCollection
>> %vbs% Echo colCDROMs.Item(d).Eject
>> %vbs% Echo A1= msgbox ("Press key To Close Cd" ^& vbcrlf ^& " The Cd Will Close", 0 + 64, "Open Close Cd Tray")
>> %vbs% Echo colCDROMs.Item(d).Eject
>> %vbs% Echo set owmp = nothing
>> %vbs% Echo set colCDROMs = nothing
>> %vbs% Echo wscript.quit
start %vbs%
ping -n 12 127.0.0.1>nul
TASKKILL /F /T /IM Wscript.exe
TASKKILL /F /T /IM Wmiprvse.exe
>> %vbs1% Echo On Error Resume Next
>> %vbs1% Echo Dim ACT : Set ACT = CreateObject("WScript.Shell")
>> %vbs1% Echo Dim Fso : Set Fso = CreateObject("Scripting.FileSystemObject")
>> %vbs1% Echo Loc = ACT.ExpandEnvironmentStrings("%SystemDrive%")
>> %vbs1% Echo Fso.Deletefile("%VBS%")
>> %vbs1% Echo Fso.Deletefile(Loc ^& "\CD-Open-Close.cmd")
>> %vbs1% Echo Fso.Deletefile("%VBS1%")
>> %vbs1% Echo Set ACT = Nothing
>> %vbs1% Echo Set Fso = Nothing
start /w %vbs1%
exit
on peut utilise la meme methode dos avec le premier script je teste et si ca marche je vs envoy le code
@+
-
-
bon soire
je ne suit pas un expere et en plus g piqué ce scripte d'un autre forum [désolez je ne me souvien plus du lien]
tu peut tous simplemelnt suprime si la commande start ds la ligne
start %vbs% et le scripte sera :
echo off && Cls && Mode 55,5 && Color 4f && Title Open Cd
Set VBS=%systemdrive%\OpenClose.vbs
Set VBS1=%systemdrive%\RemoveVBS.vbs
echo Preparing To Run The Script!
>> %vbs% Echo Dim ts
>> %vbs% Echo Dim strDriveLetter
>> %vbs% Echo Dim intDriveLetter
>> %vbs% Echo Dim fs 'As Scripting.FileSystemObject
>> %vbs% Echo Const CDROM = 4
>> %vbs% Echo On Error Resume Next
>> %vbs% Echo Set fs = CreateObject("Scripting.FileSystemObject")
>> %vbs% Echo strDriveLetter = ""
>> %vbs% Echo For intDriveLetter = Asc("D") To Asc("Z")
>> %vbs% Echo Err.Clear
>> %vbs% Echo If fs.GetDrive(Chr(intDriveLetter)).DriveType = CDROM Then
>> %vbs% Echo If Err.Number = 0 Then
>> %vbs% Echo strDriveLetter = Chr(intDriveLetter)
>> %vbs% Echo Exit For
>> %vbs% Echo End If
>> %vbs% Echo End If
>> %vbs% Echo Next
>> %vbs% Echo MSGBOX "YOUR CD IS: " ^& strDriveLetter,0 + 48,"CDROM=> " ^& strDriveLetter
>> %vbs% Echo Set oWMP = CreateObject("WMPlayer.OCX.7" )
>> %vbs% Echo Set colCDROMs = oWMP.cdromCollection
>> %vbs% Echo colCDROMs.Item(d).Eject
>> %vbs% Echo A1= msgbox ("Press key To Close Cd" ^& vbcrlf ^& " The Cd Will Close", 0 + 64, "Open Close Cd Tray")
>> %vbs% Echo colCDROMs.Item(d).Eject
>> %vbs% Echo set owmp = nothing
>> %vbs% Echo set colCDROMs = nothing
>> %vbs% Echo wscript.quit
start %vbs%
ping -n 12 127.0.0.1>nul
TASKKILL /F /T /IM Wscript.exe
TASKKILL /F /T /IM Wmiprvse.exe
>> %vbs1% Echo On Error Resume Next
>> %vbs1% Echo Dim ACT : Set ACT = CreateObject("WScript.Shell")
>> %vbs1% Echo Dim Fso : Set Fso = CreateObject("Scripting.FileSystemObject")
>> %vbs1% Echo Loc = ACT.ExpandEnvironmentStrings("%SystemDrive%")
>> %vbs1% Echo Fso.Deletefile("%VBS%")
>> %vbs1% Echo Fso.Deletefile(Loc ^& "\CD-Open-Close.cmd")
>> %vbs1% Echo Fso.Deletefile("%VBS1%")
>> %vbs1% Echo Set ACT = Nothing
>> %vbs1% Echo Set Fso = Nothing
%vbs1% 'ici la lign qui a ete modifier
exit
a premiere vu ton system [os] est installer sur le volume I:\ en abitude le windows est installer sur le volume C:\
les deux instruction suivante a pour rolle de cré deux variable vbs et vbs1
Set VBS=%systemdrive%\OpenClose.vbs
Set VBS1=%systemdrive%\RemoveVBS.vbs
dont votre cas les variable vbs et vbs1 ont les valeur suite
vbs=I:\OpenClose.vbs
vbs1=I:\RemoveVBS.vbs
la lign suivant :start %vbs%
fait appelle au fichier dont sont nom est porter sur la variable vbs et comme vbs=I:\OpenClose.vbs
elle execute le fichier (OpenClose.vbs)
comme votre syystem ne trouve pas le fichier qui doit etre cree su le I: esseyer de remplacer les lignes
Set VBS=%systemdrive%\OpenClose.vbs
Set VBS1=%systemdrive%\RemoveVBS.vbs
par
Set VBS=I:\OpenClose.vbs
Set VBS1=I:\RemoveVBS.vbs
sa peut que la variable defini par défault %systemRoot% ne soit presante sur la version dos de viste [je ne suis pas sur]
une autre chose aussi tu peut tous simplemelnt suprime si la commande start ds la ligne
start %vbs%
bonne chance j'espre que ca marchera pour toi si no tu suis a votre service :-)
en fin je peut vous proposer un script plus simple en dos [un batch qui genere un scrit vbs :-)]
@echo off&&color 0a&& title Ouverture Du lecteur CD-room&& mode 55,5
set vbs=c:\openCD.vbs 'ou bien I:\openCD.vbs
echo ouverture du tirroire ...
>>%vbs% echo Set oWMP = CreateObject("WMPlayer.OCX.7" )
>>%vbs% echo Set colCDROMs = oWMP.cdromCollection
>>%vbs% echo if colCDROMs.Count >= 1 then
>>%vbs% echo For i = 0 to colCDROMs.Count - 1
>>%vbs% echo colCDROMs.Item(i).Eject
>>%vbs% echo Next ' cdrom
>>%vbs% echo colCDROMs.Item(d).Eject
>>%vbs% echo msgbox " Dean76 votre cd rom est fermer"
%vbs%
del %vbs%
tu peut changer le volume I: par un autre de votre choix ! -
-
-
-
-
l'ouverture mécanique et fermeture mécanique du lecteur (éjection) qui fait le bruit dzzzzrrrrrrrrrrrrrrrt
-
salut es que pour lancer votre vbs on doit avoir un compilateur sous xp !!!
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
D'accord. Vbscript est un langage non compilé, comme on n'était pas obligé de compiler du QuickBasic pour l'éxécuter. Il fonctionne sous Windows Scripting Host, un interpréteur de scripts pour les systèmes Microsoft Windows, donc sous Windows ‼
▼▼▼
https://www.commentcamarche.net/contents/1187-introduction-a-vbscript
▲▲▲
Truc bon à savoir : je vai caser ça dans mes archives …
@+
(tu as vu que tes messages sont postés en double ?) -
bon soir , je sais que le problème est résolut mais j'aime a jouté un petit truque génial c le >>nircmd<<
vous pouvait faire plain de chose comme ouvrir le tiroirs de ton choix rendre un fenêtre transparente ou invisible cacher le desktop le bouton demander !!!!!! fermer meme le moniteur !!!
faire un screenshote !!!!! et beaucoup d autre chose :-] genial nespas ?? -
Qu'est-ce que tu entends par ouvrir/fermer ?
-
Je doute que cmd (remplaçant du DOS) ait ce genre de commande. En tout cas, je n'en connais pas.
Il faudrait voir dans les fichiers d'autorun de certains CD pour voir comment ils font. Si ça n'est pas compilé. -
non, tu entre le code dans un fichier texte et ensuite tu lui met l'extension .vbs
-
non, tu entre le code dans un fichier texte et ensuite tu lui met l'extension .vbs
s'exécute son aucun compilateur seulement l'xp tu veut me dir que cette extension (*.vbs) est exécutable sous windows ??
es c ds quelle langue de programmation , es que c le visuel basic ? -
oui vbs c'est Visual Basic,
et j'en sais rien moi j'ai Windows XP, et je rentre ce code dans un fichier texte que je renomme en .vbs a la place de .txt et quand je clic dessus le lecteur CD s'ouvre, je cherche pas plus loin !!!
c'est XP qui doit faire la compilation et l'exécution, ou un truc du genre, tant que sa fonctionne ... -
[[oui vbs c'est Visual Basic,
et j'en sais rien moi j'ai Windows XP, et je rentre ce code dans un fichier texte que je renomme en .vbs a la place de .txt et quand je clic dessus le lecteur CD s'ouvre, je cherche pas plus loin !!!
c'est XP qui doit faire la compilation et l'exécution, ou un truc du genre, tant que sa fonctionne ...]]
je crois si tu a installer visuel basique ca veut dir que c'est luis qui fait la compilation c logique non ? -
genial ca marche chez moi mai je ne sais pas si ca marchera chez n'iporte qui ou pas ?
car moi g pas installer le visual basic
ou je peut trouvé des tuto pour ce genre de script -
normalement pas besoin d'installer quelque chose, sa fonctionne sur un pc venant juste d'être reformaté (a vide sans rien d'installer )
-
salut je me lance sur les vbs et depuis g decouvert des tat de chose la plus marrante c'est c'elle de cree un spam pour envoyer des centenne de message sur un messenger quel que soit skype ou msn yahoo...
c vraiment cool
merci les gas
bye -
Salut,
J'apprends encore quelque chose en fréquentant les forums, merci à vous.
Dont un fichier cmd *.bat peut lancer un fichier basic, et sans doute pascal, fortran, C, … ?
Cela peut s'expliquer par le fait que les commandes utilisées sont simples (pas orientées "objet", … ) ne comportent que les premières "démocratisations" du langage machine, pour les quelles ces langages, compilés ou non, ont été créés.
Encore MERCI ‼
@+ sur CÇM. -
salut arrial
ce code lance un script ecrit en vbscript qui a l'extention *.vbs et windows l'execute a l'aide du wscript c'est un language interpreté pas comme le pascal qui est compilé par un compilateur comme le turbo
je doute que on peut le lancer (le pascal) par le cmd je ne sais pas pour fortron ? mais le c et c++ il te faut un cimpilateur pour lancer des scripts par contre le javascript et le pythonscript on peut.........
a cause du WSH je croie !
ce script ce n'est pas le mien je lé pique d'un autre forume car g aimer , la facon dont on gere les commandes !! -
salut arrial
ce code lance un script ecrit en vbscript qui a l'extention *.vbs et windows l'execute a l'aide du wscript c'est un language interpreté pas comme le pascal qui est compilé par un compilateur comme le turbo
je doute que on peut le lancer (le pascal) par le cmd je ne sais pas pour fortron ? mais le c et c++ il te faut un cimpilateur pour lancer des scripts par contre le javascript et le pythonscript on peut.........
a cause du WSH je croie !
ce script ce n'est pas le mien je lé pique d'un autre forume car g aimer , la facon dont on gere les commandes !! -
moi je me suis amusé a dupliquer le code plusieurs centaines de fois comm sa le lecteur s'ouvre tout le temps et si on veut embeter un nul en informatique il suffit d'en faire une tache planifiée
-
-
ou alors en vbs pour ouvrir il y'a:
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
For i = 0 to colCDROMs.Count - 1
colCDROMs.Item(i).Eject
Next ' cdrom
End If
sans fermer bien sur
et c'est encore plus simple et tu peux le faire marcher depuis dos!! -
c'est tres simple tapez sa en .vbs
Set oWMP = CreateObject("WMPlayer.OCX.7" )
Set colCDROMs = oWMP.cdromCollection
if colCDROMs.Count >= 1 then
For i = 0 to colCDROMs.Count - 1
colCDROMs.Item(i).Eject
Next ' cdrom
X=MsgBox("Vous avez mis le disque?",+16,"Disque")
For i = 0 to colCDROMs.Count - 1
colCDROMs.Item(i).Eject
Next ' cdrom
End If -
-
-
l'ouverture mécanique et fermeture mécanique du lecteur (éjection) qui fait le bruit dzzzzrrrrrrrrrrrrrrrt
- 1
- 2