Bonjour, j'ai un script qui compare deux fichiers.txt:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
set WshShell = WScript.CreateObject("WScript.Shell") 
DesktopPath = WSHShell.SpecialFolders("Desktop")
 
'''''''''''''''''''''''''''''''''''''''''''''''''
' On ouvre la boite de dialogue pour selectionner le fichier à comparer:
 
set objDialog = CreateObject("SafrcFileDlg.FileOpen") 
objDialog.OpenFileOpenDlg 
vrFchSlctn = objDialog.FileName
'wscript.echo objDialog.FileName 
'''''''''''''''''''''''''''''''''''''''''''''''''
 
'''''''''''''''''''''''''''''''''''''''''''''''''
' On copie le fichier 
 
Set FSO = CreateObject("Scripting.FileSystemObject")
FSO.CopyFile vrFchSlctn, "tempComparLignes.tmp"
'''''''''''''''''''''''''''''''''''''''''''''''''
 
Wscript.echo "On marque une pause le temps de modifier les paramétres manuellement dans votre application" & vbCrLf _
           & "Appuyez sur OK quand vous aurez fini"
 
 
 
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objSourceFile = objFSO.OpenTextFile("tempComparLignes.tmp", 1) ' Fichier originale
Set objSourceFile2 = objFSO.OpenTextFile(vrFchSlctn, 1) 'Fichier copié
 
vrNumLigne = 0
 
Do Until objSourceFile.AtEndOfStream Or objSourceFile2.AtEndOfStream
   vrNumLigne = vrNumLigne + 1
   vrLigne = objSourceFile.ReadLine
   vrLigne2 = objSourceFile2.ReadLine
 
   vrComprLign = StrComp(vrLigne, vrLigne2, 1)
 
      If nombre = 1 Or nombre = -1 Or IsNull(vrComprLign) then
             vrNul = "Le fichier a été modifier"
             vrLignDif = vrLignDif & vrNumLigne & ": " & vrLigne & vbCrLf & vrNumLigne & ": " & vrLigne2 & vbCrLf & vbCrLf
             'vrLignDif2 = vrLignDif2 & "Origin " & vrNumLigne & ": " & vrLigne & vbCrLf & "Modif  " & vrNumLigne & ": " & vrLigne2 & vbCrLf & vbCrLf
      Else
      End If
 
Loop
objSourceFile.Close
objSourceFile2.Close
 
 
If IsEmpty(vrNul) Then
         Wscript.Echo "Le fichier n'a subi aucune modification"
Else
         Wscript.Echo vrLignDif
          Const ForReading = 1, ForWriting = 2 
            Set FichierTXT = WScript.CreateObject("WScript.Shell") 
             Dim fso, f 
             Set fso = CreateObject("Scripting.FileSystemObject") 
             Set f = fso.OpenTextFile(DesktopPath & "\Résulta de la comparaison du fichier.txt", ForWriting,true) 
             f.writeline("Fichier source: " & vrFchSlctn) 
             f.writeline("")
             f.writeline("")  
             f.writeline(vrLignDif) 
          f.close
End If
 
Set FSO = CreateObject("Scripting.FileSystemObject")
Set fsoFile = fso.getFile("tempComparLignes.tmp")
 fsoFile.delete
Mais si la ligne 5 du fichier 1 et pleine, et que la ligne 5 du fichier deux est vide, les script ne voi pas la différence, sauriez vous m'aider a aranger ca ?