Petit soucis en BATCH

Résolu
Bonjour,
j'aurais souhaité savoir comment désigner un lecteur particulier sachant que les noms a b c d e f g, changent selon les différents pc.
en gros voilà
j'ai un fichier sur un cd (d:\install.exe) et je veux que mon .bat le lance
alors si le lecteur du pc sur lequel je suis est bien d: ça marche: mais si le lecteur est g: ça ne marche pas.
Comment nommer ce lecteur ou bien y a t il une solution comme en html type /fichier.extension ?

..\fichier.exe marcherait?

Marci ! =)

--
 Sites favoris : CCM Framasoft Liberkey Ubuntu

8 réponses

  1. Contributeur
    hello
    une possibilité est de tester
    if exist d:\install.exe d:\install.exe
    if exist e:\install.exe e:\install.exe
    if exist f:\install.exe f:\install.exe
    if exist g:\install.exe g:\install.exe
    1. merci mais le soucis c'est que je vais me retrouver avec des lignes et des lignes en trop :(
      le truc n'est pas de faire avec 2 lecteurs mais que le bat trouve le lecteur sur lequel il tourne^^
      ou alors que l'utilisateur entre sa lettre du cd, mais ça dépasse un peu mes capacités là
      1. Contributeur
        Tu peux faire une boucle pour simplifier.

        Tu peux éventuellement coupler cela à fsutil pour vérifier que D:\install.exe, s'il existe, est bien un CD-ROM et non un fichier install.exe sur un disque dur secondaire.

    2. Oulla le mot "boucle" me fait peur^^
      1. Contributeur
        Pourtant ça n'a rien d'effrayant, et ça permet de tester X possibilités en très peu de lignes.

    3. ce n'est pas possible de simplement simplifier l'adresse?
      ex en html on fait pour un lien <a href="http://www.azdek.fr/dossier/fichier.z ......
      en simplifié donne : <a href="dossier/fichier.z .......

      ?

      il serait ainsi lançable sur cd, clé usb, disque externe , ftp etc
      1. Contributeur
        Logiquement non si le fichier .bat et si le fichier à lancer sont sur des supports différents.

    4. imaginons sur un cd

      adresse du .bat : D:\fichier.bat
      adresse de l'exe : D:\data\lanceur.exe
      1. Contributeur
        Si les deux fichiers sont sur le même lecteur :

        start data\lanceur.exe

    5. Formidable je test ça de suite et je passe en résolu
      merci mille fois =)
      1. Contributeur
        Oulla le mot "boucle" me fait peur^^
        for %l in (d e f g h i ) do if exist %l:\install.exe %l:\install.exe