[VBScript] Aide manipulation date/heure

Résolu
bonjour,
j'ai un souci avec la manipulation de dates/heures dans un vbscript.
Je récupère dans une variable l'attribut DateLastModified d'un fichier.
Je voudrais ensuite ajouter 2h a cette valeur. Mon probleme, est que pour les heures proches de minuit, il faut pouvoir passer au jour suivant. J'ai essayé d'utiliser la fonction DateAdd, mais il ne semble pas que cela fonctionne (je n'arrives pas à lier Date et Heure). Peut-etre y-a-t-il une autre fonction que je ne connaisses pas ?

Merci d'avance pour toute réponse

3 réponses

  1. slt si vous pouvez m'aider,j ne sais pas comment avoir l'apparance de windows en application vb (fichier dll)
    1. Salut, voilà un script qui fonctionne chez moi. Comme tu peux le constater, cela va au-delà de la gestion des heures
      dim yeartab
      yeartab = array(31,28,31,30,31,30,31,31,30,31,30,31)
      Dim fs, f, s
      filespec="fichier.ext" ' à modifier suivant desiderata
          Set fs = CreateObject("Scripting.FileSystemObject")
          Set f = fs.GetFile(filespec)
          s = f.DateLastModified
      	msgbox s
          'Extraction des données de la date
      	sjour=Cint(Mid(s,1,2))
      	smois=Cint(Mid(s,4,2))
      	san=Cint(Mid(s,7,4))
      	'Extraction des données de l'heure
      	sheure=Cint(Mid(s,12,2))
      	smin=Mid(s,15,2)	' pas besoin de convertir, on ne travaille pas avec
      	ssec=Mid(s,18,2)	' idem
      	
      	sheure=sheure+2
      	
      	' Et là, ça se complique
      if sheure > 24 then
      	sheure=sheure-24
      	sjour=sjour+1
      		
      	maxdayforthismonth=yeartab(smois-1)
      	'sommes-nous dans une année bissextile ?
      	if smois=2 then
      		if ((san Mod 400) - (san Mod 100) + (san Mod 4) = 0) then maxdayforthismonth=29
      	end if
      	if sjour > maxdayforthismonth then
      		sjour = 1
      		smois = smois + 1
      		if smois > 12 then
      			smois = 1
      			san = san + 1
      		end if
      	end if
      end if
      leadzeroj = "": if sjour < 10 then leadzeroj = "0"
      leadzerom = "": if smois < 10 then leadzerom = "0"
      leadzeroh = "": if sheure < 10 then leadzeroh = "0"
      NewDateLastModified = leadzeroj & sjour & "/" & leadzerom & smois & "/" & san & " " & leadzeroh & sheure & ":" & smin & ":" & ssec
      msgbox NewDateLastModified
      

      Je crois que c'est cohérent