Space Profil: Maux des rateurs | Ce vbcript fais une modification les symbles "titi" du fichier toto.txt par l'emplacement ou est situé le fichier toto.txt
j'aimerais que la modification se fasse dans un *.reg pour la base de registre. le problème c'est que dans un *.reg , le path doit comporter deux antislashs pour qu'il soit pris en compte dans la base de la registre => C:\\Program Files\\Grosminet\\Donald\\ (et non pas C:\Program Files\Grosminet\Donald\
quelle est la modification à faire dans ce vbscript pour qu'il y ait ces deux antislashs ? merci ps: j'y connais rien en vbscript :/
Code :
- ' Remplace tous les symboles "titi" dans le fichier "toto.txt"
- ' par le nom du dossier où se trouve "toto.txt"
- Const ForReading = 1, ForWriting = 2, ForAppending = 8
- Dim fso, f_in, f_out
- Set fso = CreateObject("Scripting.FileSystemObject" )
- old_string = "titi"
- new_string = fso.GetParentFolderName(fso.GetFile("toto.txt" ))
- ' Wscript.Echo new_string 'Debug
- Set f_in = fso.OpenTextFile("toto.txt", ForReading)
- Set f_out = fso.OpenTextFile("toto_tmp.txt", ForWriting, true)
- Do Until f_in.AtEndOfStream
- txt_line = f_in.ReadLine
- token_pos = Instr(txt_line, old_string)
- If (token_pos > 0) Then
- ' Wscript.Echo token_pos & " " & txt_line 'Debug
- new_txt_line = ""
- If (token_pos > 0) Then
- new_txt_line = Left(txt_line, token_pos - 1)
- End If
- new_txt_line = new_txt_line & new_string
- If (token_pos + Len(old_string) - 1 < Len(txt_line)) Then
- new_txt_line = new_txt_line _
- & Right(txt_line, Len(txt_line) - token_pos - Len(old_string) + 1)
- End If
- txt_line = new_txt_line
- ' Wscript.Echo token_pos & " " & txt_line 'Debug
- End If
- f_out.WriteLine txt_line
- Loop
- f_in.Close
- f_out.Close
- ' Remplace toto.txt par le nouveau fichier toto_tmp_.txt
- fso.DeleteFile "toto.txt", true
- fso.MoveFile "toto_tmp.txt", "toto.txt"
|
Message édité par Space le 24-11-2005 à 17:17:25
|