Problème de taille d'un fichier non mis à jour...[EDIT] [VBS] - VB/VBA/VBS - Programmation
Marsh Posté le 25-09-2005 à 15:22:08
C'est un fichier log provenant d'un programme si je comprend bien ?
Et ce que tu veux faire, c'est le couper tout les 10 Mo ? en insérant un commentaire à chaque fois ?
Si tel est le cas, il n'y à qu'au niveau du programme qu'il faut faire cela... De façon à ce que tu n'es pas d'itération qui passent au moment ou tu tronque le fichier....
Enfin si tu peux modifier le prog qui te fait la log.....
Marsh Posté le 22-09-2005 à 11:57:07
Bonjour,
Je suis sur un script de trancature de fichier de log.
Si quelqu'un en a un à me refiler qui fonctionne, je suis preneur
OU un peu d'aide !
Bref, je vérifie la taille du fichier avec une petite fonction:
Function getsize(sF)
Set fso = CreateObject("Scripting.FileSystemObject" )
Set oSpec = fso.GetFile(sF)
getsize = oSpec.size
Set fso = Nothing
Set oSpec = nothing
End Function
Je vérifie la taille du fichier avant d'insérer une ligne.
Le problème est que la taille n'est pas actualisé en temps réél !?
Du coup, la taille du fichier n'est jamais respecté !!
Comment faire ?
[EDIT]
Plusieurs centaines itérations passe avant que la taille soit mise à jour.
Exemple avec le script si dessous.
Voici le résultat: "1619,getsize(sFileSpec):24781"
1619 = le nombre d'itérations, 24781 octects alors que le fichier doit être de 10000 Max!!!
autre résultat :1708,getsize(sFileSpec):26205
En plus, jamais le même résultat...
-----------------------------------
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject" )
Set f = fso.OpenTextFile(sFileSpec, ForWriting, True)
For i = 1 To 10100
If getsize(sFileSpec) > 10000 Then
WScript.Echo i&",getsize(sFileSpec):"&getsize(sFileSpec)
Exit For
End IF
Next
f.Close
-----------------------------------
Merci !
Message édité par tixu06 le 22-09-2005 à 14:18:06