Avatar billede froulund Nybegynder
27. marts 2007 - 10:36 Der er 6 kommentarer og
1 løsning

Teste på en fil ud fra alder

Hej!

Jeg har følgende kørende i dag:
----------------------------------------

Context.LogMessage "Checking Address=" & Context.GetProperty("Address")
Context.SetResult 0, "File Does Not Exist.  No Action Required"
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery _
    ("Select * From CIM_Datafile Where Name = 'D:\\Test\\Test.txt'")
If colFiles.Count > 0 Then
  Context.SetResult 1, "File Exists. Please Clear Files"
End If
--------------------------------

Nu har jeg brug for at kunne bruge den samme metode til at teste en fil's alder.

Hvis "X" er mere end 500 sek. skal jeg vide det.

På forhånd tak.

Mvh.
Henrik Froulund
Avatar billede morten_leth Nybegynder
28. marts 2007 - 16:40 #1
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery _
    ("Select * From CIM_Datafile Where Name = 'c:\\Scripts\\medlemskaber.txt'")
For Each objFile in colFiles
    strFileAge = ConvertDT(objFile.CreationDate)
    'wscript.echo strFileAge & "<" & now
    If strFileAge < now Then
        Wscript.Echo strFileAge
    End If
Next

Function ConvertDT(strDT)
'    On Error Resume Next
   
    Dim objTime   
    Set objTime = CreateObject("WbemScripting.SWbemDateTime")
    objTime.Value = strDT
    ConvertDT = objTime.GetVarDate 'convert UTC to Standard Time; from 20070202230659.500000-480 to 2/2/2007 11:06:59 PM
End Function

det skal finpudses for den tjekker kun på om den er ældre end idag nu, men den kan laves om så den er som du godt vil have den..
Avatar billede morten_leth Nybegynder
28. marts 2007 - 16:41 #2
håber du kan bruge lidt af det... jeg har ikke umiddelbart tid til at kigge mere på det... lige nu i hvert fald..
Avatar billede morten_leth Nybegynder
28. marts 2007 - 17:05 #3
Jeg kunne da ikke dy mig alligevel jeg fandt frem til hvordan det skulle gøres fandt ud af jeg havde et gammelt script der fandt frem til fra en dato til nu i sekunder...

'Context.LogMessage "Checking Address=" & Context.GetProperty("Address")
'Context.SetResult 0, "File Does Not Exist.  No Action Required"
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colFiles = objWMIService.ExecQuery _
    ("Select * From CIM_Datafile Where Name = 'c:\\Scripts\\medlemskaber.txt'")
For Each objFile in colFiles
    strFileAge = ConvertDT(objFile.CreationDate)
    StrCompare = trim(DateDiff("s", strFileAge,now)) 'dette er for at finde ud af hvor mange sekunder der fra createddate til nu
    If StrCompare < "500" = true Then
        Wscript.Echo StrCompare & " < 500"
    End If
Next

Function ConvertDT(strDT)
'    On Error Resume Next 
    Dim objTime
    Set objTime = CreateObject("WbemScripting.SWbemDateTime")
    objTime.Value = strDT
    ConvertDT = objTime.GetVarDate 'convert UTC to Standard Time; from 20070202230659.500000-480 to 2/2/2007 11:06:59 PM
End Function

her har du hvad du skal bruge håber du kan bruge det til noget...

Jeg er ikke helt med på hvad du kan bruge den der context ting der til for jeg kan ikke finde noget nogen steder der beskriver den... ud over hvis det er en const, hvilket det jo ikke er her (medmindre der er mere i scriptet end vi ser.. :D )
Avatar billede morten_leth Nybegynder
08. april 2007 - 20:34 #4
Er dette et problem jeg fik løst eller brugte jeg tiden forgæves ???
Avatar billede froulund Nybegynder
09. april 2007 - 17:36 #5
Ja! Undskyld den lange svar tid :o)

Jeg har ikke haft tid til at teste. Men det virkede perfekt!!

Tusind tak for din indsats.

Mvh.
Henrik Froulund
Avatar billede froulund Nybegynder
09. april 2007 - 17:39 #6
Tusind tak for din indsats.

Mvh.
Henrik Froulund
Avatar billede morten_leth Nybegynder
10. april 2007 - 08:58 #7
Ha ha sådan går det når musikken spiller og man laver andre ting.. :D det går nok er da bare glad for at kunne hjælpe... :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester