IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Empêcher une incompatibilité dans le choix des items [Batch]


Sujet :

Scripts/Batch

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2024
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Empêcher une incompatibilité dans le choix des items
    Bonsoir,

    Nouveau sur le forum, j'espère trouver ma réponse ici

    J'ai crée un batch en m'inspirant de ce topic du forum:

    "Sélection multiples dans .bat [Batch]" (désolé je ne peux pas mettre le lien, ca le détecte en tant que spam)


    Dans ce même batch j'ai mis une parti pour installer et désinstaller une (ou plusieurs) application(s).

    La je cherche à savoir comment je pourrais rendre incompatible (via une erreur avec message et du coup un retour à zero sur le choix initial) si l'utilisateur coche deux items incompatible (item d'installation du logiciel 2, mais en même temps l'item de désinstallation du logiciel 2)

    Tout en sachant qu'il est quand même possible d'installer le logiciel 2 et de désinstaller le logiciel 3...

    Merci à tous.

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 196
    Points : 5 785
    Points
    5 785
    Par défaut
    Bonjour,

    As tu un bout de code à nous proposer ?

    Tous les logiciels installable sont aussi désinstallable ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2024
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    J'ai exactement le même que celui ci pour l'instant (il me reste à compléter les items)

    La le but du coup serait de dire que l'item 1 n'est pas compatible avec le 5...

    Code BATCH : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    @ECHO OFF
    SETLOCAL ENABLEDELAYEDEXPANSION
     
    REM Initialize
    FOR /L %%I IN (1,1,8) DO SET ITEM%%I=[ ]
     
    :Boucle
    CLS
    ECHO Choisissez les logiciels que vous souhaitez installer :
    ECHO.
    ECHO %ITEM1% 01. Installation Google Chrome
    ECHO %ITEM2% 02. Installation Mozilla Firefox
    ECHO %ITEM3% 03. Installation 7Zip
    ECHO %ITEM4% 04. Installation NotePad++
    ECHO %ITEM5% 05. Desinstallation Google Chrome
    ECHO %ITEM6% 06. Desinstallation Mozilla Firefox
    ECHO %ITEM7% 07. Desinstallation 7Zip
    ECHO %ITEM8% 08. Desinstallation NotePad++
    ECHO.
    ECHO Taper Q pour Quitter
    ECHO Taper R pour lancer l'installation
     
    set WhichItem=
    SET /P WhichItem=Faites votre choix et appuyer sur ENTER : 
     
    IF NOT DEFINED WhichItem GOTO Boucle
    IF /I "%WhichItem%"=="Q" GOTO :EOF
    IF /I "%WhichItem%"=="R" GOTO RunOptions
     
    SET /A WhichItem=%WhichItem%
     
    FOR /L %%I IN (1,1,8) DO IF "%%I"=="%WhichItem%" (
    	IF "!Item%WhichItem%!"=="[X]" (
    		SET Item%WhichItem%=[ ]
    	) ELSE (
    		SET Item%WhichItem%=[X]
    	)
    )
    GOTO Boucle
     
    :RunOptions
    FOR /L %%I IN (1,1,8) DO IF "!Item%%I!"=="[X]" call :Item%%I
    pause
    GOTO :EOF
     
    :item1
     
    GOTO :EOF
     
    :item2
     
    GOTO :EOF
     
    :item3
     
    GOTO :EOF
     
    :item4
     
    GOTO :EOF

    et oui tous les logiciels installable sont aussi désinstallable

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 196
    Points : 5 785
    Points
    5 785
    Par défaut
    Je ferais ceci

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    @ECHO OFF
    SETLOCAL ENABLEDELAYEDEXPANSION
     
    REM Initialize
    FOR /L %%I IN (1,1,8) DO SET ITEM%%I=[ ]
     
    :Boucle
    CLS
    ECHO Choisissez les logiciels que vous souhaitez installer :
    ECHO.
    ECHO %ITEM1% 01. Installation Google Chrome
    ECHO %ITEM2% 02. Installation Mozilla Firefox
    ECHO %ITEM3% 03. Installation 7Zip
    ECHO %ITEM4% 04. Installation NotePad++
    ECHO %ITEM5% 05. Desinstallation Google Chrome
    ECHO %ITEM6% 06. Desinstallation Mozilla Firefox
    ECHO %ITEM7% 07. Desinstallation 7Zip
    ECHO %ITEM8% 08. Desinstallation NotePad++
    ECHO.
    ECHO Taper Q pour Quitter
    ECHO Taper R pour lancer l'installation
     
    set WhichItem=
    SET /P WhichItem=Faites votre choix et appuyer sur ENTER : 
     
    IF NOT DEFINED WhichItem GOTO Boucle
    IF /I "%WhichItem%"=="Q" GOTO :EOF
    IF /I "%WhichItem%"=="R" GOTO RunOptions
     
    SET /A WhichItem=%WhichItem%
     
    FOR /L %%I IN (1,1,8) DO IF "%%I"=="%WhichItem%" (
    	IF "!Item%WhichItem%!"=="[X]" (
    		SET Item%WhichItem%=[ ]
     
    	) ELSE (
    		SET Item%WhichItem%=[X]
    		IF "%WhichItem%"=="1" SET Item5=[ ]
    		IF "%WhichItem%"=="2" SET Item6=[ ]
    		IF "%WhichItem%"=="3" SET Item7=[ ]
    		IF "%WhichItem%"=="4" SET Item8=[ ]
    		IF "%WhichItem%"=="5" SET Item1=[ ]
    		IF "%WhichItem%"=="6" SET Item2=[ ]
    		IF "%WhichItem%"=="7" SET Item3=[ ]
    		IF "%WhichItem%"=="8" SET Item4=[ ]
    	)
    )
    GOTO Boucle
     
    :RunOptions
    FOR /L %%I IN (1,1,8) DO IF "!Item%%I!"=="[X]" call :Item%%I
    pause
    GOTO :EOF
     
    :item1
     
    GOTO :EOF
     
    :item2
     
    GOTO :EOF
     
    :item3
     
    GOTO :EOF
     
    :item4
     
    GOTO :EOF

    PS : Si tu es sur d'avoir une symétrie parfaite (4 installations / 4 désinstallations, 10/10...) on peux surement faire un calcul pour éviter de tout définir à la main

  5. #5
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2024
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Merci !
    Et oui je suis sûr d’avoir le même nombre d’installation que de désinstallation

  6. #6
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 196
    Points : 5 785
    Points
    5 785
    Par défaut
    Dans ce cas la

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    @ECHO OFF
    SETLOCAL ENABLEDELAYEDEXPANSION
     
    REM Initialize
    FOR /L %%I IN (1,1,8) DO SET ITEM%%I=[ ]
     
    :Boucle
    CLS
    ECHO Choisissez les logiciels que vous souhaitez installer :
    ECHO.
    ECHO %ITEM1% 01. Installation Google Chrome
    ECHO %ITEM2% 02. Installation Mozilla Firefox
    ECHO %ITEM3% 03. Installation 7Zip
    ECHO %ITEM4% 04. Installation NotePad++
    ECHO %ITEM5% 05. Desinstallation Google Chrome
    ECHO %ITEM6% 06. Desinstallation Mozilla Firefox
    ECHO %ITEM7% 07. Desinstallation 7Zip
    ECHO %ITEM8% 08. Desinstallation NotePad++
    ECHO.
    ECHO Taper Q pour Quitter
    ECHO Taper R pour lancer l installation
     
    set WhichItem=
    SET /P WhichItem=Faites votre choix et appuyer sur ENTER : 
     
    IF NOT DEFINED WhichItem GOTO Boucle
    IF /I "%WhichItem%"=="Q" GOTO :EOF
    IF /I "%WhichItem%"=="R" GOTO RunOptions
     
    SET /A WhichItem=%WhichItem%
     
    FOR /L %%I IN (1,1,8) DO IF "%%I"=="%WhichItem%" (
    	IF "!Item%WhichItem%!"=="[X]" (
    		SET Item%WhichItem%=[ ]
    	) ELSE (
    		SET Item%WhichItem%=[X]
    		SET /A "mod=((%%~I-1+(8/2))%%8)+1"
    		SET Item!mod!=[ ]
    	)
    )
    GOTO Boucle
     
    :RunOptions
    FOR /L %%I IN (1,1,8) DO IF "!Item%%I!"=="[X]" call :Item%%I
    pause
    GOTO :EOF
     
    :item1
     
    GOTO :EOF
     
    :item2
     
    GOTO :EOF
     
    :item3
     
    GOTO :EOF
     
    :item4
     
    GOTO :EOF

  7. #7
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2024
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Merci, j'ai décidé de faire un peu plus, le choix de tous installer, ou de tous désinstaller. Donc si je fais le choix 1 et le choix 7, ca me conserve l'ensemble des sélections on peut rajouter se blocage aussi ?


    Code BATCH : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    @ECHO OFF
    SETLOCAL ENABLEDELAYEDEXPANSION
     
    REM Initialize
    FOR /L %%I IN (1,1,12) DO SET ITEM%%I=[ ]
     
    :Boucle
    CLS
    ECHO Choisissez les logiciels que vous souhaitez installer :
    ECHO.
    ECHO %ITEM1% 01. Installation de tous les logiciels
    ECHO %ITEM2% 02. Installation Mozilla Firefox
    ECHO %ITEM3% 03. Installation 7Zip
    ECHO %ITEM4% 04. Installation NotePad++
    ECHO %ITEM5% 05. Installation Google Chrome
    ECHO %ITEM6% 06. Installation Teams
    ECHO.
    ECHO %ITEM7% 07. Desinstallation de tous les logiciels
    ECHO %ITEM8% 08. Desinstallation Mozilla Firefox
    ECHO %ITEM9% 09. Desinstallation 7Zip
    ECHO %ITEM10% 10. Desinstallation NotePad++
    ECHO %ITEM11% 11. Desinstallation Google Chrome
    ECHO %ITEM12% 12. Desinstallation Teams
    ECHO.
    ECHO Taper Q pour Quitter
    ECHO Taper R pour lancer l installation
     
    SET WhichItem=
    SET /P WhichItem=Faites votre choix et appuyer sur ENTER : 
     
    IF NOT DEFINED WhichItem GOTO Boucle
    IF /I "%WhichItem%"=="Q" GOTO :EOF
    IF /I "%WhichItem%"=="R" GOTO RunOptions
     
    SET /A WhichItem=%WhichItem%
     
    IF "%WhichItem%"=="1"  (
    	IF "!Item%WhichItem%!"=="[X]" (
    		FOR /L %%I IN (1,1,6) DO SET Item%%I=[ ]
    	) ELSE (
    		FOR /L %%I IN (1,1,6) DO SET Item%%I=[X]
    	)
    )
     
    IF "%WhichItem%"=="7"  (
    	IF "!Item%WhichItem%!"=="[X]" (
    		FOR /L %%I IN (7,1,12) DO SET Item%%I=[ ]
    	) ELSE (
    		FOR /L %%I IN (7,1,12) DO SET Item%%I=[X]
    	)
    )
     
    FOR /L %%I IN (1,1,12) DO IF "%%I"=="%WhichItem%" (
    	IF "!Item%WhichItem%!"=="[X]" (
    		SET Item%WhichItem%=[ ]
    	) ELSE (
    		SET Item%WhichItem%=[X]
    		SET /A "mod=((%%~I-1+(12/2))%%12)+1"
    		SET Item!mod!=[ ]
    	)
    )
    set Item1=[X]
    FOR /L %%I IN (2,1,6) DO IF "!Item%%I!"=="[ ]" SET Item1=[ ]
     
    set Item7=[X]
    FOR /L %%I IN (7,1,12) DO IF "!Item%%I!"=="[ ]" SET Item7=[ ]
    GOTO Boucle
     
    :RunOptions
    FOR /L %%I IN (1,1,25) DO IF "!Item%%I!"=="[X]" call :Item%%I
    pause
    GOTO :EOF

    J'ai retiré les ITEMS pour alléger le code sur le forum

  8. #8
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 196
    Points : 5 785
    Points
    5 785
    Par défaut
    Il y a peut être mieux en code mais c'est l'idée déjà

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    @ECHO OFF
    SETLOCAL ENABLEDELAYEDEXPANSION
     
    REM Initialize
    FOR /L %%I IN (1,1,12) DO SET ITEM%%I=[ ]
     
    :Boucle
    CLS
    ECHO Choisissez les logiciels que vous souhaitez installer :
    ECHO.
    ECHO %ITEM1% 01. Installation de tous les logiciels
    ECHO %ITEM2% 02. Installation Mozilla Firefox
    ECHO %ITEM3% 03. Installation 7Zip
    ECHO %ITEM4% 04. Installation NotePad++
    ECHO %ITEM5% 05. Installation Google Chrome
    ECHO %ITEM6% 06. Installation Teams
    ECHO.
    ECHO %ITEM7% 07. Desinstallation de tous les logiciels
    ECHO %ITEM8% 08. Desinstallation Mozilla Firefox
    ECHO %ITEM9% 09. Desinstallation 7Zip
    ECHO %ITEM10% 10. Desinstallation NotePad++
    ECHO %ITEM11% 11. Desinstallation Google Chrome
    ECHO %ITEM12% 12. Desinstallation Teams
    ECHO.
    ECHO Taper Q pour Quitter
    ECHO Taper R pour lancer l installation
     
    set WhichItem=
    SET /P WhichItem=Faites votre choix et appuyer sur ENTER : 
     
    IF NOT DEFINED WhichItem GOTO Boucle
    IF /I "%WhichItem%"=="Q" GOTO :EOF
    IF /I "%WhichItem%"=="R" GOTO RunOptions
     
    SET /A WhichItem=%WhichItem%
     
    SET P1=
    SET P2=
     
    IF %WhichItem% == 1 (
    	SET "P1=[X]"
    	SET "P2=[ ]"
    )
     
    SET /A "idx=12/2+1"
    IF %WhichItem% == %idx% (
    	SET "P1=[ ]"
    	SET "P2=[X]"
    )
     
    IF DEFINED P1 (
    	FOR /L %%I IN (2,1,12) DO (
    		IF %%I LSS %idx% SET Item%%I=%P1%
    		IF %%I GTR %idx% SET Item%%I=%P2%
    	)
    GOTO Boucle
    )
     
     
    FOR /L %%I IN (1,1,12) DO IF "%%I"=="%WhichItem%" (
    	IF "!Item%WhichItem%!"=="[X]" (
    		SET Item%WhichItem%=[ ]
     
    	) ELSE (
    		SET Item%WhichItem%=[X]
    		SET /A "mod=((%%~I-1+(12/2))%%12)+1"
    		SET Item!mod!=[ ]
    	)
    )
    GOTO Boucle
     
    :RunOptions
    FOR /L %%I IN (1,1,12) DO IF "!Item%%I!"=="[X]" call :Item%%I
    pause
    GOTO :EOF
     
    :item1
     
    GOTO :EOF
     
    :item2
     
    GOTO :EOF
     
    :item3
     
    GOTO :EOF
     
    :item4
     
    GOTO :EOF

  9. #9
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2024
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Ca me suffit largement, merci beaucoup pour ton aide !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajouter une partition dans le choix de grub
    Par alexp dans le forum Administration système
    Réponses: 5
    Dernier message: 17/01/2006, 10h37
  2. VB6]cacher une fenetre dans la barre des taches en une icone
    Par bouazza92 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 26/12/2005, 23h37
  3. Creation d'une icon dans la barre des taches
    Par Janitrix dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 22/12/2005, 22h36
  4. Ajouter une icone dans la barre des titres (cme emule)
    Par Crisanar dans le forum Windows
    Réponses: 7
    Dernier message: 12/12/2004, 12h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo