Diskuze: Je zjistitelný filesystemwatcher?

C# .NET .NET (C# a Visual Basic) Je zjistitelný filesystemwatcher? American English version English version

Avatar
Dog
Člen
Avatar
Dog:

Ahoj,
mám dotaz, když budu mít filesystemwatcher nastavený na analyzování logfilu jednoho software, může software nějakým způsobem zjistit, že je čten jeho logfile? Podotýkám, že jen čten, kdybych dělal nějaké změny, kopie, přejmenovávání, nebo mazání tak by to zjistil určitě právě filesystemwatcher (ReadDirectoryChan­gesW) nastavený na složku s logfilem, ale neví někdo jak je to, když je jen čten?

A dá se to zjistit něják jinak, než ReadDirectoryChan­gesW? Za předpokladu, že nezná software vůbec název programu atd.

Děkuji :-)

Editováno 17. července 19:15
 
Odpovědět 17. července 19:13
Avatar
Odpovídá na Dog
Michal Štěpánek:

Nabízí se spíš otázka, co myslíš tím

analyzování logfilu jednoho software

Nevím, jak je to u "LOG" souborů, ale většinou to u souborů funguje tak, že když soubor otevřeš (byť jen ke čtení), nemůžeš do něj odjinud zapisovat (soubor je využíván jiným procesem).
Dalo by se to obejít tím, že si soubor vždycky někam zkopíruješ a po analýze zahodíš...

Nahoru Odpovědět 18. července 6:06
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Dog
Člen
Avatar
Dog:

A kdyby to teoreticky šlo s (FileShare.Re­adWrite), tak se to dá nějakým způsobem zjistit?

 
Nahoru Odpovědět 18. července 23:40
Avatar
Luboš Běhounek (Satik):

O co presne se snazis? :) Co se stane, kdyz ten program zjisti, ze mu ctes log? To maji opravdu hlidany log? :D

Nahoru Odpovědět 19. července 8:29
:)
Avatar
Dog
Člen
Avatar
Odpovídá na Michal Štěpánek
Dog:

Tohle je trošku problém...Když spustím aplikaci, tak to jednou přečte log a potom to vyhodí NET. error něco takovýho... The process cannot access the file 'filename' because it is being used by another process

půjde to bud tak, že tu vyjímku nějak ošetřím, try, catch, by to mohlo jít teoreticky, nebo ten log kopírovat. Máte někdo nějakej jinej tip?

Díky

 
Nahoru Odpovědět 22. července 1:07
Avatar
Dog
Člen
Avatar
Dog:

V každém případě jsou aplikace, které ten log bez problémů čtou a vytahují z něj informace.

 
Nahoru Odpovědět 22. července 1:31
Avatar
Marian Benčat
Redaktor
Avatar
Marian Benčat:

lol tam nejde o to ze odchytis exceptionu, ale o to, ze ten file descriptor ma otevreny neco jinyho :D pointa je ta, ze bys mel vsechno otevirat jen pro cteni a jen na opravdu super kratkou chvilku to otevrit pro zapis.. jen rychle zapsat a hned zase zavrit soubor a otevrit ho treba pro cteni (pokud potrebujes)

 
Nahoru Odpovědět 22. července 3:50
Avatar
Odpovídá na Dog
Michal Štěpánek:

Však jsem to psal

(soubor je využíván jiným procesem).

Nejlepší bude, když si vždycky pro potřeby tvého programu ten log někam zkopíruješ (pak si s tou kopií můžeš dělat co chceš) a až budeš chtít čerstvější data, uděláš si další kopii toho logu...

Nahoru Odpovědět 22. července 6:14
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.