Just nu i M3-nätverket
Gå till innehåll

Söker en ”programsnurra”


Mats.

Rekommendera Poster

Söker en ”programsnurra” som kontrollerar om en fil på en specifik plats på en filserver har ändrats dvs. ändrat datum/klockslag.

 

Det kan vara en Excel fil t.ex.

 

Om filen har förändrats så skall man få ett pop-up meddelande om det.

 

Programsnurran skall kunna köra kontrollen en gång i timman.

 

Länk till kommentar
Dela på andra webbplatser

  • 2 veckor senare...

Vet inte om du är ute efter ett komplett program eller om du vill ha hjälp med hur du ska göra.

Så jag ger dig två sätt du kan göra det själv på:

 

Lättaste är att använda sig av VB's FileDateTime().

 

I en timer t.ex så sätter du in en liknande kod:

 

Dim iTid as String, iNyTid as String

Private Sub Timer1_Timer()
    If iTid <> FileDateTime("C:\Filen_du_vill_kolla\test.txt") Then

   iNyTid = FileDateTime("C:\Filen_du_vill_kolla\test.txt")
   MsgBox "Filen har ändrats"

   iTid = iNyTid
End Sub

Sub cmdStart_Click()
    iTid = FileDateTime("C:\Filen_du_vill_kolla\test.txt")
    Timer1.Enabled = True
End Sub

 

 

Ovanstående är ett simpelt exempel på hur du skulle kunna göra.

 

Ett bättre sätt, dock lite overkill är att antingen använda sig av 'FindFirstChangeNotification' API för att kolla en hel folder efter förändringar, eller att kolla CRC32 på filen du vill ha koll på och så fort det ändras så skickas ett meddelande (då kan inte filen ändras utan att du vet det.. detta kan den dock i mitt exempel... till viss del).

 

Länk till kommentar
Dela på andra webbplatser

Det ser ut som en lösning som skulle passa.

 

Jag får tyvärr inte .vbs scriptet att fungera.

 

Får ett ett felmeddeelande, se bifogad fil.

 

 

Länk till kommentar
Dela på andra webbplatser

Det ser ut som en lösning som skulle passa.

 

Jag får tyvärr inte .vbs scriptet att fungera.

 

Får ett ett felmeddeelande, se bifogad fil.

 

Är dålig på script.

 

 

[bild bifogad 2006-02-10 09:29:28 av Mats.]

803486_thumb.jpg

Länk till kommentar
Dela på andra webbplatser

Missade helt att du ville ha denna kod i VBScript.

Då fungerar det inte alls med timers etc.

 

Det du kan göra då är att skapa ett VBScript som sedan körs 1 gång i timman med hjälp av eventuellt Schemaläggaren (Scheduled Tasks).

Do så måste ett sådant skript vara något mer avancerat, du måste spara ned data i en textfil för att jämföras när programet körs nästa gång.

 

Du kan nämligen inte ha Timers etc.

 

 

Kan återkomma så fort jag har lite mer tid med ett skript som gör något liknande.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...