.BAT : Supprimer dossier Menu démarrer de XP
micromega
Messages postés
141
Statut
Membre
-
Micromega -
Micromega -
Bonjour à tous,
J'essaye de créer un code .bat pour supprimer un dossier et son contenu, présent dans le menu démarrer de Windows.
Pour cela j'ai déjà ce code là :
@echo off
rd /s /q "%ALLUSERSPROFILE%\Start Menu\Programs\Test"
Mais cela ne fonctionne uniquement sur Windows 7, dès que j'essaye sur Windows XP, l'adresse est mauvaise. J'ai eu beau tester et chercher la solution quelque part, j'ai rien trouvé qui ne fonctionne.
Si quelqu'un peu m'aider à résoudre ce problème....
Merci à vous.
J'essaye de créer un code .bat pour supprimer un dossier et son contenu, présent dans le menu démarrer de Windows.
Pour cela j'ai déjà ce code là :
@echo off
rd /s /q "%ALLUSERSPROFILE%\Start Menu\Programs\Test"
Mais cela ne fonctionne uniquement sur Windows 7, dès que j'essaye sur Windows XP, l'adresse est mauvaise. J'ai eu beau tester et chercher la solution quelque part, j'ai rien trouvé qui ne fonctionne.
Si quelqu'un peu m'aider à résoudre ce problème....
Merci à vous.
A voir également:
- .BAT : Supprimer dossier Menu démarrer de XP
- Creer un fichier .bat - Guide
- Bat to exe converter - Télécharger - Édition & Programmation
- .Bat mac ✓ - Forum MacOS
- Reboot bat - Forum Programmation
- Net use bat - Forum Réseau
5 réponses
Bonjour dubcek,
J'ai trouvé la solution :
rd /s /q "%ALLUSERSPROFILE%\Menu D'marrer\Programmes\Test" > WinXP
rd /s /q "%ALLUSERSPROFILE%\Start Menu\Programs\Test" > Win7
En faite il faut remplacer l'accent du "Menu Démarrer" par la combinaison "Alt"+"0130". Sinon rien y fait.
Bon cependant je rencontre un nouveau problème ave ma commande :
@echo off
call "test1.exe"
/wait
call "test2.exe"
Elle fonctionne très bien lorsqu'elle est sur le disque dur; cependant dès que j'exécute mon test à partir d'un CD, la seconde ligne : call "test2.exe"
ne fonctionne pas (pass d'éxécution).
Cela est certainement dû au fait que la commande est éxécuté à partir d'un lecteur CD.
En cherchant sur le net j'ai trouvé des trucs comme : start "essai" %CDROM%/
Mais j'ai beau les utiliser dans tous les sens rien ne se passe.
Quelqu'un aurait-il la solution à mon problème ?
Merci encore.
J'ai trouvé la solution :
rd /s /q "%ALLUSERSPROFILE%\Menu D'marrer\Programmes\Test" > WinXP
rd /s /q "%ALLUSERSPROFILE%\Start Menu\Programs\Test" > Win7
En faite il faut remplacer l'accent du "Menu Démarrer" par la combinaison "Alt"+"0130". Sinon rien y fait.
Bon cependant je rencontre un nouveau problème ave ma commande :
@echo off
call "test1.exe"
/wait
call "test2.exe"
Elle fonctionne très bien lorsqu'elle est sur le disque dur; cependant dès que j'exécute mon test à partir d'un CD, la seconde ligne : call "test2.exe"
ne fonctionne pas (pass d'éxécution).
Cela est certainement dû au fait que la commande est éxécuté à partir d'un lecteur CD.
En cherchant sur le net j'ai trouvé des trucs comme : start "essai" %CDROM%/
Mais j'ai beau les utiliser dans tous les sens rien ne se passe.
Quelqu'un aurait-il la solution à mon problème ?
Merci encore.
Le "/wait" signifie que "test2.exe" ne s'exécute que lorsque "test1.exe" est fini. Elles doivent donc s'exécuter l'une après l'autre.
"Test 1.exe" installation et attente de fin (/wait), lancer "test2.exe" ensuite.
Cela marche lorsque je clique sur le Bat de mon bureau, mais le même dans un CD, il ne m'éxécute pas le "Test2.exe".
Pas d'idées à propos de l'éxécution de .bat à partir d'un cd ?
Merci
"Test 1.exe" installation et attente de fin (/wait), lancer "test2.exe" ensuite.
Cela marche lorsque je clique sur le Bat de mon bureau, mais le même dans un CD, il ne m'éxécute pas le "Test2.exe".
Pas d'idées à propos de l'éxécution de .bat à partir d'un cd ?
Merci
Salut l'ami :)
Bon cependant je rencontre un nouveau problème ave ma commande :
normal que tu n'y arrives pas ;)
=> la commande call "test1.exe" marche, si tu es dans le bon dossier
=> idem pour call "test2.exe"
si tu veux vraiment utilise cette ligne de commande ( call "test1.exe" ), il faut que tu te places sur le bon dossier, en utilisant la commande CD.
Ou alors, tu mets le chemin complet.
==> Exemple :
ou
================
Pourquoi mettre un wait ?
La commande Call permet de lancer un fichier, en interrompant le script, jusqu'à la "fermeture" de ce fichier.
Une fois le fichier fermé, le script continue sa lancée...
Un wait est donc inutile ;)
++
Bon cependant je rencontre un nouveau problème ave ma commande :
@echo off call "test1.exe" /wait call "test2.exe"
normal que tu n'y arrives pas ;)
=> la commande call "test1.exe" marche, si tu es dans le bon dossier
=> idem pour call "test2.exe"
si tu veux vraiment utilise cette ligne de commande ( call "test1.exe" ), il faut que tu te places sur le bon dossier, en utilisant la commande CD.
Ou alors, tu mets le chemin complet.
==> Exemple :
@echo off CD c:\windows call notepad.exe call write.exe
ou
@echo off call c:\windows\notepad.exe call c:\windows\write.exe
================
Pourquoi mettre un wait ?
La commande Call permet de lancer un fichier, en interrompant le script, jusqu'à la "fermeture" de ce fichier.
Une fois le fichier fermé, le script continue sa lancée...
Un wait est donc inutile ;)
++
Bonjour,
Merci à vous tous pour vos commentaires et vos aides.
Pour construire des .bat je fais beaucoup de recherches et de tests. C'est pour cela que je ponds des trucs un peu bizaroïdes des fois. Mais tant que cela fonctionne, ça me va ! =D
Captain Tsubasa, je comprends ton exemple merci.
Mais comment faire lorsque le dossier des fichiers à lancer est dans un lecteur qui peut changer de lettre. En effet, selon le PC, le lecteur CD peut avoir une lettre différente : e/: f/: k/: ..... ?
Faut-il utiliser %CDROM% ? :
@echo off
call %CDROM%\dossier\test1.exe
call %CDROM%\dossier\test2.exe
Merci encore
Merci à vous tous pour vos commentaires et vos aides.
Pour construire des .bat je fais beaucoup de recherches et de tests. C'est pour cela que je ponds des trucs un peu bizaroïdes des fois. Mais tant que cela fonctionne, ça me va ! =D
Captain Tsubasa, je comprends ton exemple merci.
Mais comment faire lorsque le dossier des fichiers à lancer est dans un lecteur qui peut changer de lettre. En effet, selon le PC, le lecteur CD peut avoir une lettre différente : e/: f/: k/: ..... ?
Faut-il utiliser %CDROM% ? :
@echo off
call %CDROM%\dossier\test1.exe
call %CDROM%\dossier\test2.exe
Merci encore
Salut :)
Faut-il utiliser %CDROM%
Hélas, non, cette variable d'environnement, %CDROM% n'existe pas (sur mon seven)
Mais attend, et si tu demandais la lettre du cdrom à l'utilisateur ?
Comme ceci :
++
Faut-il utiliser %CDROM%
Hélas, non, cette variable d'environnement, %CDROM% n'existe pas (sur mon seven)
Mais attend, et si tu demandais la lettre du cdrom à l'utilisateur ?
Comme ceci :
@echo off cls echo Quel est la lettre du CDROM ? set /p lettre= "%lettre%:\dossier\test1.exe " pause
++
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ce script détecte le lecteur associé au cdrom : http://www.robvanderwoude.com/files/getcdromdrivesxp_xp.txt
oublier le script précédent, essayer celui ci.
la variable %%k contient la lettre du lecteur cd-rom, mettre le code là, entre ()
la variable %%k contient la lettre du lecteur cd-rom, mettre le code là, entre ()
@echo off
set d=A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
for %%a in (%d%) do (
for /F "tokens=1" %%k in ('fsutil fsinfo drivetype %%a: ^| findstr "CD-ROM"') do (
echo %%k
)
)
Merci dubcek de t'acharner à m'aider.
Je vais essayer la dernier script que tu viens de m'envoyer, juste pour savoir ; lorsque tu parle d'ajouter mon code cela équivaut à :
@echo off
set d=A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
for %%a in (%d%) do (
for /F "tokens=1" %%k in ('fsutil fsinfo drivetype %%a: ^| findstr "CD-ROM"') do (
echo %%k
(call "test.exe")
(call "test2.ese")
)
)
C'est comme cela que je dois insérer mon code ?
Merci.
Je vais essayer la dernier script que tu viens de m'envoyer, juste pour savoir ; lorsque tu parle d'ajouter mon code cela équivaut à :
@echo off
set d=A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
for %%a in (%d%) do (
for /F "tokens=1" %%k in ('fsutil fsinfo drivetype %%a: ^| findstr "CD-ROM"') do (
echo %%k
(call "test.exe")
(call "test2.ese")
)
)
C'est comme cela que je dois insérer mon code ?
Merci.
Bonjour,
Désolé pour le temps de réponse, je n'avais pas eu le temps de me remettre les mains dans la commande.
J'ai donc essayé la commande que tu as créé Dubcek, et cela semble fonctionner à merveille !
Il faut bien penser à écrire toute l'arbre du fichier à lancer depuis la racine.
Cependant, dans notre exemple, j'aurais besoin que "test2.exe" ne se lance que lorsque "test1.exe" est fini.
Je pensais utiliser la commande "/wait" mais apparement cela ne fonctionne pas (déjà mentionné plus haut et également essayé).
Comment puis-je créer cette attente ?
Après cela je pense que tout sera bon.
Merci encore
Désolé pour le temps de réponse, je n'avais pas eu le temps de me remettre les mains dans la commande.
J'ai donc essayé la commande que tu as créé Dubcek, et cela semble fonctionner à merveille !
Il faut bien penser à écrire toute l'arbre du fichier à lancer depuis la racine.
Cependant, dans notre exemple, j'aurais besoin que "test2.exe" ne se lance que lorsque "test1.exe" est fini.
Je pensais utiliser la commande "/wait" mais apparement cela ne fonctionne pas (déjà mentionné plus haut et également essayé).
Comment puis-je créer cette attente ?
Après cela je pense que tout sera bon.
Merci encore