Tonio92 Publication: 1 mai 2010 Publication: 1 mai 2010 RIHO en version portable en moins d'une minute ! 1/ Ouvrir le dossier d'installation de RIHO par défaut le chemin est C:\SNCF-HOR 2/ Ouvrir le S/répertoire PROG 3/ Double-cliquer sur le fichier hormaj.ini il doit s'ouvrir automatiquement avec le bloc-notes sinon l'ouvrir manuellement avec votre éditeur de texte par défaut. 4/ Reperer sur la ligne PROGRAMMES= la lettre du disque ici c'est C: Effacer la lettre du disque et les 2 points Faire de même pour toutes les lignes PATH=: Sous [HIVER-GL] [ETE-GL] et [GREVE] Vous devez avoir cela : Important enregistrer le fichier hormaj.ini modifié Voila votre RIHO est en version portable que vous pouvez recopier dans une clef USB. Pour démarrer RIHO il suffira de double-cliquer sur horinfgl.exe ou au besoin faire un raccourci qui pointe sur horinfgl.exe Personnellement je me suis fait un fichier de commande pour: 1/ de verifier les chemins de RIHO 2/ de le rendre portable 3/ de réécrire le fichier INI en cas de problème Si ça vous interesse voici le code copier-coller ce qui suit dans le bloc note et sauvegarder comme Lanceur.cmd: @echo off cls setlocal enableDelayedExpansion REM Couleur du fond bleu clair et texte en jaune color 9e REM Titre de la console title Lanceur RIHO Portable REM Variable du chemin du répertoire principal For %%D in (.) do Set cherep=%%~fD REM chemin du fichier ini set cpr=%cherep%\PROG\hormaj.ini REM Si le fichier ini est introuvable REM erreur et fin du programme if not exist "%cpr%" goto erreur REM Amputer la lettre du disque (exemple C:) set cherep=%cherep:~2% REM Pointer sur le dossier de hormaj.ini cd PROG\ REM Variable du chemin du répertoire PROG for %%D in (.) do set chepro=%%~fD REM Amputer la lettre du disque (exemple C:) set chepro=%chepro:~2% REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM Verification avant le démarrage de RIHO REM Verifier si le chemin actuel correspond REM au chemin inscrit dans hormaj.ini REM On récupère le chemin inscrit dans hormaj.ini for /f "tokens=1,2 delims==" %%i in ('findstr /i "PROGRAMMES=" hormaj.ini') do ( set chemini=%%j) REM Important il faut mettre des guillemets REM aux variables chemcini et cheminpro REM sinon erreur dans la commande if. REM Si le nouveau chemin ne correspond pas : REM 1/ On verifier si les noms des répertoires REM font moins de 8 caratères REM 2/ On réecrit le fichier ini if not "%chemini%"=="%chepro%" goto longpath REM Si le nouveau chemin correspond if "%chemini%"=="%chepro%" goto :Lancement REM Sortie si aucune condition trouvée endlocal exit REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM lecture et récriture du fichier ini ligne par ligne :modini set hiv=%cherep%\HIVER-GL set ete=%cherep%\ETE-GL REM Destruction des fichiers antérieurs inutiles if exist hormajN.ini del hormajN.ini cls title R‚‚criture du fichier hormaj.ini.... echo. echo. echo R‚‚criture du fichier hormaj.ini echo. echo. echo Cette r‚‚criture s'effectue echo automatiquement si le nom ou echo l'emplacement du r‚pertoire echo de RIHO ne correspondent pas echo au nom et au chemin inscrit echo dans le fichier hormaj.ini echo. echo. echo Veuillez patienter s.v.p. echo. REM réécriture du fichier hormaj.ini type hormaj.ini | find /i "[COMMUN]" >> hormajN.ini&echo PROGRAMMES=%chepro%>> hormajN.ini type hormaj.ini | find /i "preambule=" >> hormajN.ini type hormaj.ini | find /i "SERVICE=" >> hormajN.ini type hormaj.ini | find /i "langue=" >> hormajN.ini type hormaj.ini | find /i "GROUPE=" >> hormajN.ini type hormaj.ini | find /i "ServeurMAJ=" >> hormajN.ini type hormaj.ini | find /i "VerInstalDate=" >> hormajN.ini type hormaj.ini | find /i "[PREFERENCES]" >> hormajN.ini type hormaj.ini | find /i "code=" >> hormajN.ini type hormaj.ini | find /i "correspondances=" >> hormajN.ini type hormaj.ini | find /i "heure-deb=" >> hormajN.ini type hormaj.ini | find /i "heure-fin=" >> hormajN.ini type hormaj.ini | find /i "gare_privilegiee=" >> hormajN.ini type hormaj.ini | find /i "[sERVICES]" >> hormajN.ini type hormaj.ini | find /i "HIVER-GL=" >> hormajN.ini type hormaj.ini | find /i "ETE-GL=" >> hormajN.ini type hormaj.ini | find /i "GREVE=" >> hormajN.ini REM Trouver la variable Type for /f "tokens=1,2 delims==" %%i in ('findstr /i "TYPE=" hormaj.ini') do set type=%%i=%%j type hormaj.ini | find /i "[HIVER-GL]" >> hormajN.ini&echo PATH=%hiv%>> hormajN.ini&echo %type%>> hormajN.ini type hormaj.ini | find /i "[ETE-GL]" >> hormajN.ini&echo PATH=%ete%>> hormajN.ini&echo %type%>> hormajN.ini type hormaj.ini | find /i "[GREVE]" >> hormajN.ini&echo PATH=%ete%>> hormajN.ini&echo %type%>> hormajN.ini REM Si l'ancien hormaj.ini existe on le détruit if exist hormaj.ini del hormaj.ini REM Renommer le nouveau fichier ini RENAME hormajN.ini hormaj.ini cls title R‚‚criture du fichier hormaj.ini termin‚e.... echo. echo. echo. echo. echo Modification et r‚‚criture du echo fichier hormaj.ini termin‚e. echo. echo. echo Cette r‚ecriture s'effectue echo automatiquement si le nom ou echo l'emplacement du r‚pertoire echo de RIHO ne correspondent pas echo au nom et au chemin inscrit echo dans le fichier hormaj.ini echo. pause REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM Continuer par le lancement de RIHO :lancement cls REM Lancement de RIHO start /b horinfgl.exe REM Fin du programme endlocal exit xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM Verifier si les noms des répertoires font moins de 8 caratères :longpath REM chemin complet du répertoire en cours REM Important il faut mettre des guillemets REM à la variable chemc sinon erreur. set chemc="%CD%" REM lecture de la variable chemc et REM création des variables dossier set /a c=2 :boucle REM Création de la table de variable sous() for /f "tokens=1,%c%* delims=\" %%a in (%chemc%) do ( set sous%c%=%%b set /A c=c+1 REM si la variable n'est pas definie REM on sort de la boucle if not defined sous%c% goto continue REM Ici on boucle maximum 12 fois REM Créer plus de 12 sous-dossiers REM faudrait être fou .. REM Ce nombre peut être augmenté si REM on veut réutiliser cette routine. if not %c%==12 goto boucle ) :continue REM On met le compteur à 2 pour ne pas REM prendre le premier paramètre qui est REM la lettre du disque set /a c=2 echo. REM Calculer le nombre de caratères des dossiers :longdos REM répertoire principal if defined sous2 set nomdos=Le r‚pertoire principal if defined sous2 set mot=%sous2%&set sous2=&set num=&goto decompte REM sous/répertoire set nomdos=Le sous/r‚pertoire if defined sous3 set mot=%sous3%&set /A num=1&set sous3=&goto decompte if defined sous4 set mot=%sous4%&set /A num=2&set sous4=&goto decompte if defined sous5 set mot=%sous5%&set /A num=3&set sous5=&goto decompte if defined sous6 set mot=%sous6%&set /A num=4&set sous6=&goto decompte if defined sous7 set mot=%sous7%&set /A num=5&set sous7=&goto decompte if defined sous8 set mot=%sous8%&set /A num=6&set sous8=&goto decompte if defined sous9 set mot=%sous9%&set /A num=7&set sous9=&goto decompte if defined sous10 set mot=%sous10%&set /A num=8&set sous10=&goto decompte if defined sous11 set mot=%sous11%&set /A num=9&set sous11=&goto decompte if defined sous12 set mot=%sous12%&set /A num=10&set sous12=&goto decompte REM sortie de la boucle goto sautdec REM Routine du décompte lettre par lettre :decompte set cmpt=-1 REM on incrémente c set /A c=c+1 :retour set /a cmpt+=1 set otelet=!mot:~%cmpt%,1! if not "%otelet%"=="" goto retour REM Si plus de 8 caractères affichage REM d'un message d'alerte if %cmpt% GTR 8 goto affcara REM retour affich. caractères répertoire :retaff REM si c ne fait pas 12 on boucle if not %c%==12 goto :longdos :sautdec echo. REM variables messages if defined mess set mess=&set cond=oui REM Si aucun message on continue le REM lancement if not defined mess ( REM sauf si cond est defini if defined cond goto afalrep goto modini ) REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM sortie endlocal exit REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM Affichage caractères répertoire :affcara set mess=oui echo %nomdos% %num% echo %mot% echo fait %cmpt% caractŠres. echo. goto retaff REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM Si le fichier hormaj.ini est intouvable :erreur REM Couleur du fond rouge et texte en jaune color 4e REM Chemin horinfgl.exe SET Horingl=%CD%\%Horingl%\PROG\horinfgl.exe IF not exist %Horingl% goto :pasprog cls title Erreur fichier hormaj.ini introuvable .... echo. echo Suite … une erreur inconnue le programme echo ne peut fonctionner car le fichier hormaj.ini echo est introuvable. echo. echo Causes probables: echo. echo 1/ Assurez-vous que vous lancez ce fichier echo de commande depuis le r‚pertoire principal echo de RIHO et non depuis le r‚pertoire 'PROG' echo ou que vous n'ayez pas renomm‚ le r‚pertoire echo 'PROG'. echo. echo 2/ Le fichier hormaj.ini n'‚xiste pas ou est echo ‚rron‚. echo. echo Dans ce cas voulez-vous recr‚er le fichier echo hormaj.ini ? echo. SET /P Choice= Tapez la touche O(oui) ou N(non) + 'Entr‚e' IF NOT '%Choice%'=='' SET Choice=%Choice:~0,1% IF /I '%Choice%'=='O' GOTO :Reconini IF /I '%Choice%'=='N' goto :Quit cls echo. echo. ECHO. ECHO D‚sol‚ "%Choice%" n'est pas autoris‚. Veuillez recommencer s.v.p. echo. echo. echo. echo. pause SET Choice= GOTO :erreur echo. pause endlocal :Quit exit REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM Reconstruction du fichier hormaj.ini :Reconini title R‚‚criture hormaj.ini choix du service .... cls SET Choice= SET Serv= echo. echo. echo. echo. echo Quel service (Hiver/Et‚) voulez-vous inscrire dans echo le fichier hormaj.ini ? echo. SET /P Choice= Tapez la touche H(Hiver) ou E(Et‚) + 'Entr‚e' IF NOT '%Choice%'=='' SET Choice=%Choice:~0,1% IF /I '%Choice%'=='H' SET Serv=HIVER-GL IF /I '%Choice%'=='E' SET Serv=ETE-GL If defined Serv GOTO :recrini cls echo. echo. ECHO. ECHO D‚sol‚ "%Choice%" n'est pas autoris‚. Veuillez recommencer s.v.p. echo. echo. echo. echo. pause SET Choice= GOTO :Reconini :recrini title R‚‚criture du fichier hormaj.ini.... echo. echo. echo R‚‚criture du fichier hormaj.ini echo. echo. echo. echo. echo. echo. echo. echo Veuillez patienter s.v.p. echo. REM réécriture du fichier hormaj.ini Set dospr=%CD%\PROG REM on enleve les 2 premières lettres set dospr=%dospr:~2% Set dosserv=%CD% REM on enleve les 2 premières lettres set dosserv=%dosserv:~2% echo [COMMUN] >> %dospr%\hormaj.ini echo PROGRAMMES=%dospr%>> %dospr%\hormaj.ini echo preambule=0 >> %dospr%\hormaj.ini echo SERVICE=%Serv% >> %dospr%\hormaj.ini echo langue=FRANCAIS >> %dospr%\hormaj.ini echo GROUPE= >> %dospr%\hormaj.ini echo ServeurMAJ= >> %dospr%\hormaj.ini echo VerInstalDate= >> %dospr%\hormaj.ini echo [PREFERENCES] >> %dospr%\hormaj.ini echo code=1 >> %dospr%\hormaj.ini echo correspondances=2 >> %dospr%\hormaj.ini echo heure-deb=0 >> %dospr%\hormaj.ini echo heure-fin=360 >> %dospr%\hormaj.ini echo gare_privilegiee=0 >> %dospr%\hormaj.ini echo [sERVICES] >> %dospr%\hormaj.ini echo HIVER-GL=HIVER PH >> %dospr%\hormaj.ini echo ETE-GL=ETE VE >> %dospr%\hormaj.ini echo GREVE=SERVICE ADAPTE >> %dospr%\hormaj.ini echo [HIVER-GL] >> %dospr%\hormaj.ini echo PATH=%dosserv%\HIVER-GL>> %dospr%\hormaj.ini echo TYPE=COMMUN >> %dospr%\hormaj.ini echo [ETE-GL] >> %dospr%\hormaj.ini echo PATH=%dosserv%\ETE-GL>> %dospr%\hormaj.ini echo TYPE=COMMUN >> %dospr%\hormaj.ini echo [GREVE] >> %dospr%\hormaj.ini echo PATH=%dosserv%\GREVE>> %dospr%\hormaj.ini echo TYPE=COMMUN >> %dospr%\hormaj.ini cd=%cd%\PROG GOTO :lancement REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx REM Affichage du message alarme repertoire REM si un nom répertoire plus de 8 caractères :afalrep REM Couleur du fond rouge et texte en jaune color 4e REM Si plusieurs répertoires set lerep=le r‚pertoire&set ind=indiqu‚&set cet=cette erreur if %num% NEQ 1 set lerep=les r‚pertoires&set ind=indiqu‚s&set cet=ces erreurs REM Titre de la console title Erreur nom de r‚pertoire .... echo Si un nom de r‚pertoire fait plus echo de 8 caractŠres les BITMAPS des echo boutons de commande ne seront pas echo visibles dans RIHO et le programme echo ne fonctionnera pas. echo. echo Il faut r‚nommer %lerep% echo %ind% plus haut sans depasser echo 8 caractŠres maximum pour que echo RIHO fonctionne. echo. echo Suite … %cet% le programme echo doit s'arrˆter. echo. pause endlocal exit REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx :pasprog cls REM Couleur du fond rouge et texte en jaune color 4e cls title Erreur fichier hormaj.ini introuvable .... echo. echo. echo. echo Suite … une erreur inconnue le programme echo ne peut fonctionner car le fichier horinfgl.exe echo est introuvable. echo. echo Causes probables: echo. echo Assurez-vous que vous lancez ce fichier echo de commande depuis le r‚pertoire principal echo de RIHO et non depuis le r‚pertoire 'PROG' echo ou que vous n'ayez pas renomm‚ le r‚pertoire echo 'PROG'. echo. echo. echo. echo. pause exit REM xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Pour les faineants voici le fichier Lanceur.cmd à télécharger Liens Sur rapidshare seulement pour 6 jours http://rapidshare.co...anceur.cmd.html MD5: A29B23F81CE9869A3F4B609B809A6EAC Ou sur Free (30jours): http://dl.free.fr/ryqp5iDyO
inforail Publication: 2 mai 2010 Publication: 2 mai 2010 Intéressant, comme je n'ai pas riho sous Seven, je ne peux malheureusement pas tester ta méthode, j'attends la réaction des utilisateurs, par contre, si tu le désires, je peux mettre le fichier Lanceur.cmd en téléchargement sur Info-Rail. Cordialement, Fabrice
Tonio92 Publication: 9 mai 2010 Auteur Publication: 9 mai 2010 Intéressant, comme je n'ai pas riho sous Seven, je ne peux malheureusement pas tester ta méthode, j'attends la réaction des utilisateurs, par contre, si tu le désires, je peux mettre le fichier Lanceur.cmd en téléchargement sur Info-Rail. Cordialement, Fabrice Salut ZoneWap Pas de problème tu peux mettre le fichier sur ton site. Il y a-t-il quelqu'un qui à tester mon astuce ? Si oui n'hésiter pas à le faire savoir. A+
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant