1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| Option Explicit
Const ForReading = 1, ForWriting = 2
Dim fso, F, Affichage, TB, intMsg, iCount, Reponse, Result, Contenu, TargetFile
Function ReadTextFileTest()
Dim Msg ',Folder
' On n'a pas besoin de la ligne suivante car si on ne donne pas un chemin pour le
' fichier et on donne juste son nom, Wscript le cherche en premier dans le répertoire
' de travail(répertoire courant).
' C'est cette ligne => Folder = Replace(Wscript.ScriptFullName, "\" & Wscript.ScriptName, "")
Set fso = CreateObject("Scripting.FileSystemObject")
Set F = fso.OpenTextFile("Model.vbs", ForReading, False)
ReadTextFileTest = F.Read(1012)
F.Close
Set fso = Nothing
End Function
MsgBox ReadTextFileTest
Affichage = Mid(ReadTextFileTest, 538, 164)
MsgBox Affichage
Set fso = CreateObject("Scripting.FileSystemObject")
TargetFile = fso.GetFile("Model.vbs").Path
intMsg = MsgBox("Souhaitez-vous modifier les valeurs des paramètres ?", vbYesNo, "Modifier les paramètres")
If intMsg = vbYes Then
TB = SPlit(Affichage, vbCrlf)
For iCount = 0 To UBound(TB) - 1
Reponse = InputBox("Modifier les paramètres ?", "Faire un choix", TB(iCount))
If Reponse = "" Then
MsgBox "Aucune modification n'a été apportée au fichier " & TargetFile
Wscript.Quit 0
End If
Result = Result & Reponse & vbNewLine
Next
' On ajoute la dernière valeur sans retour chariot
Reponse = InputBox("Modifier les paramètres ?", "Faire un choix", TB(UBound(TB)))
If Reponse = "" Then
MsgBox "Aucune modification n'a été apportée au fichier " & TargetFile
Wscript.Quit 0
End If
Result = Result & Reponse
' On lit la totalité du fichier puis on le ferme
Set F = fso.OpenTextFile("Model.vbs", ForReading, False)
Contenu = F.ReadAll
F.Close
' On écrit les modifications apportées au fichier et on le ferme
Set F = fso.OpenTextFile("Model.vbs", ForWriting, False)
Contenu = Replace(Contenu, Affichage, Result)
F.Write Contenu
F.Close
MsgBox "Modification terminée"
Else
Wscript.Quit 0
End If |
Partager