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