[..] Mettre à jour les commandes cmd disponibles ?

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
geofred1993
Niveau 1
Niveau 1
Messages : 11
Enregistré le : dim. 27 janv. 2013 02:56
Status : Hors ligne

[..] Mettre à jour les commandes cmd disponibles ?

#1

Message par geofred1993 »

Salut tout le monde,

D'abord, désolé pour le titre, je n'ai pas trouvé de meilleures formules pour exprimer mon problème.

J'ai ici un script qui télécharge Ruby et l'installe.
Le problème c'est que j'aimerais aussi installer des gems par la suite.
Mais il ne reconnait pas la commande gem, car elle vient juste d'être installée.
Il faudrait mettre à jours la liste des commandes disponibles (quitter cmd, relancer cmd).

Code : Tout sélectionner

Func RubyInstall()
    SetCasperJS()

    ; Download
    ShellExecuteWait('casperjs', @ScriptDir & "\scripts\ruby.js")

    ; Install
    ShellExecuteWait(@ScriptDir & '\ruby.exe', '/verysilent /dir="C:\DevTools\ruby" /tasks="assocfiles,modpath"')

    ; Install GEM packages (ne marche pas, car gem n'est pas reconnue)
    ShellExecuteWait('gem', 'install compass')

EndFunc
Avatar du membre
jguinch
Modérateur
Modérateur
Messages : 2515
Enregistré le : lun. 14 févr. 2011 22:12
Status : Hors ligne

Re: [..] Mettre à jour les commandes cmd disponibles ?

#2

Message par jguinch »

Le fait que la commande se soit pas trouvée vient certainement du fait que l'installation de ruby modifie le PATH, mais ton programme n'est pas averti de cette modification.

Ce que tu peux faire c'est mettre un EnvUpdate() avant le lancement de gem, ou éventuellement, forcer la mise à jour du PATH dans ton programme :
EnvSet("PATH", RegRead("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment", "PATH") )
Sinon, plus simplement, tu spécifies le chemin complet du programme gem ...
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
Répondre