Avatar billede plato Juniormester
31. oktober 2014 - 07:26 Der er 6 kommentarer og
1 løsning

Gem filen vbReadOnly og med Tid

Hej Alle

Jeg benytter følgende kode for at gemme en log over hvad der foregår i min database:

    Set fs = CreateObject("Scripting.FileSystemObject")
    Set a = fs.CreateTextFile("C:\Temp\Logs\" & Date & ".txt", False)
    a.WriteLine ("" & fosusername & "")
    a.WriteLine ("" & LogMessagetxt2 & LogMessagetxt & "")
    a.WriteLine "File Created on: " & Date & " " & Time
    a.Close

1. Mit første problem er at jeg gerne vil oprette filen vbReadOnly. Men jeg kan ikke hitte ud af at benytte

SetAttr "FilePath", vbReadOnly

da jeg jo ikke kender navnet på filen.

2. Mit andet problem er at jeg gerne vil have tid med på filen. Men hvis jeg benytter Now() angiver den 00-00-0000 00:00:00 og jeg kan ikke gemme filer i dette format. Hvad gør jeg så?
Avatar billede plato Juniormester
31. oktober 2014 - 07:41 #1
Jeg har prøvet med (Problem 2)

Set a = fs.CreateTextFile("C:\Temp\Logs\" & Now(), "yyyymmddhhmmss" & ".txt", False)

Virker ikke rigtig...
Avatar billede plato Juniormester
31. oktober 2014 - 07:43 #2
Ahh sorry...

Problem 2 løst.
Set a = fs.CreateTextFile("C:\Temp\Logs\" & Format(Now(), "yyyymmddhhmmss") & ".txt", False)
Avatar billede bvirk Guru
02. november 2014 - 09:45 #3
Filen, hvortil der er åbnet for skrivning, kan ikke gøres readonly samtidig - den skal lukkes først:

filnavn = "C:\Temp\Logs\" & Format(Now(), "yyyymmddhhmmss") & ".txt"

'opret - skriv til - luk
    With CreateObject("Scripting.FileSystemObject").CreateTextFile(filnavn, False)
        .WriteLine "test"
        .Close: End With
   
SetAttr filnavn, vbReadOnly
Avatar billede plato Juniormester
02. november 2014 - 10:00 #4
Men SetAttr "Filnavn", filen bliver jo døbt med Now(), så filnavn kendes jo ikke? Eller misforstår jeg ovenstående kode?
Avatar billede bvirk Guru
02. november 2014 - 12:11 #5
På kørselstidspunktet for tildeling af værdi til variablen filnavn, bliver Format(Now(), "yyyymmddhhmmss") til den streng af tegn som er filnavnet (excl extension).
Avatar billede bvirk Guru
02. november 2014 - 12:19 #6
Windows har slet noget der hedder filer uden navne. I teorien kunne man godt forestille sig nogen komponenter som lavede den abstraktion, men der er ikke tilfældet her.
Avatar billede plato Juniormester
02. november 2014 - 12:31 #7
Hehe, det blev alt for teknisk til mig. Men tak. Det virker. :)
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

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