remplacement dans un fichier de config en VBS ou Batch DOS

remplacement dans un fichier de config en VBS ou Batch DOS - VB/VBA/VBS - Programmation

Marsh Posté le 26-03-2010 à 15:54:56    

Bonjour,
j'essaye désespérément de remplacer une ligne dans un fichier texte. J'ai trouvé en Batch Dos et en VBS mais ça ne marche pas, en cause des caractères spéciaux en quantité contenu dans le fichier du type : "NœêSΑWðµ"À© Jm­Ýð    "
 
Contexte :  
en fait le but est de faire un navigateur offline pour du contenu flash sans l'appel des paramètres de sécurité adaube qui rend obligatoire un détour sur le site d'adaube !!!
au dessus de IE5 cette fenêtre apparait or les internautes ne pourront aller sur internet et la fenêtre se présentera à chaque nouvel loadmovie de flash. :cry:  
 
J'ai trouvé ici : http://opera-fr.com/pierre/portable/opera-portable-personal-fr-10.10.exe
un opera portable en FR qui ne fait pas apparaitre cette fenêtre.
Ce dernier permet d'enregistrer ses préférences dans un fichier externe qui s'enregistre dans le même répertoire que l'exe : "user.ophome"
le but est de concerver ce fichier à coté de l'exe et de changer à la volé la ligne qui déclare la page par défault :
ligne 697 :  
Home URL=E:nav-statiquehome.html ...etc...
 
or en DOS ça donne ça :  

Code :
  1. for /f "delims=" %%a in ('type "%1"') do call :commande "%%a"
  2. goto :eof
  3. :commande
  4. set ligne=%1
  5. set ligne=%ligne:Home=Homeok%
  6. rem ci=dessous ne pas modifier, sert a supprimer les guillemets dans le fichier de sortie
  7. set ligne=%ligne:"=%
  8. @echo %ligne% >>user.ophome


le script s'arrete à partir des lignes de caractère spéciaux
 
et en VBS :  

Code :
  1. Const ForReading = 1
  2. Const ForWriting = 2
  3. Set objFSO = CreateObject("Scripting.FileSystemObject" )
  4. Set objFile = objFSO.OpenTextFile("G:3-2010playerstatiqueuser.ophome", ForReading)
  5. strText = objFile.ReadAll
  6. objFile.Close
  7. strNewText = Replace(strText, "Home URL", "Homeok" )
  8. Set objFile = objFSO.OpenTextFile("G:3-2010playerstatiqueuser.ophome", ForWriting)
  9. objFile.WriteLine strNewText
  10. objFile.Close


le script transforme les caractères spéciaux en autre chose ...
 
Si je prend uniquement les lignes normales ça marche en DOS ou VBS
 
Je suis bloqué, merci de m'aider
 
(pour info une fois cette étape réussi, je récupère le répertoire courant et j'insère le bon path vers la page html à afficher au démarrage)
 
Merci d'avance

Reply

Marsh Posté le 26-03-2010 à 15:54:56   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed