[Delphi] File i/o Detectie *

Pagina: 1
Acties:

  • mrClass
  • Registratie: April 2002
  • Laatst online: 17-04-2025
Beste experts.

Ik vroeg mij af hoe ik in deplhi kan detecteren welke bytes er naar een bepaald bestand worden geschreven, en wanneer dit gebeurt.

Ik heb in de "Windows SDK help" de volgende functie gevonden:FindFirstChangeNotification() , alleen deze functie kan niet detecteren <u>wat</u> en <u>waar</u> er in bepaald bestand geschreven word.

Zou iemand weten hoe ik dit doe??

  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 07:56

alienfruit

the alien you never expected

Vraag me af of je dit soort informatie gemakkelijk kan krijgen, maar waarschijnlijk kan je zulke informatie wel krijgen door het schrijven van een low level driver (okay noemen ze dus een "file system filter driver" volgens onderstaand artikel) voor windows. Kun je meteen serieuze file monitoring maken... De functies die je noemt is alleen voor het triggeren van events als er een directory of bestand wijzigd, niet om informatie te krijgen waar het veranderd in een bestand.

Eerlijk gezegd ben ik zelf zoiets nog niet tegengekomen in de Windows SDK. Als je een antwoord dan hoor ik het graag van je!

Wil wel opmerken als je zo'n driver gaat schrijven, voorlopig nog niet klaar bent. Want dit is serieus een pokke klus om dit allemaal goed werkend te krijgen onder alle Windows versies.

Maar misschien is dit interessant: http://www.alfasp.com

[ Voor 27% gewijzigd door alienfruit op 09-08-2003 14:49 ]


  • NaliXL
  • Registratie: Maart 2002
  • Laatst online: 30-07 19:19
Kun je niet een soort checksum van alle te monitoren bestanden bijhouden, zodat je aan de hand daarvan kan zien wat er in een bestand gewijzigd is? Heb overigens geen idee hoe die checksums precies werken, maar kan me voorstellen dat zoiets mogelijk is...

Genoeg is meer dan veel, en tart den overvloed


  • bigtree
  • Registratie: Oktober 2000
  • Laatst online: 07-07 11:51
Je kan kijken hoe virusscanners dat doen.

Lekker woordenboek, als je niet eens weet dat vandalen met een 'n' is.


  • mrClass
  • Registratie: April 2002
  • Laatst online: 17-04-2025
Ik heb idd ookal aan een checksum gedacht. Alleen kan ik dan niet meer detecteren WAT er veranderd is. Dus dan zou ik hetzelfde effect krijgen als nu met die functie:FindFirstChangeNotification.

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Check eens bij MSDN bij Change Journals? Ik heb hier nu geen tijd om het hele stuk door te lezen maar ik heb het vermoeden dat het je wel kan helpen...

Professionele website nodig?


  • bigtree
  • Registratie: Oktober 2000
  • Laatst online: 07-07 11:51
curry684 schreef op 09 August 2003 @ 15:53:
Check eens bij MSDN bij Change Journals? Ik heb hier nu geen tijd om het hele stuk door te lezen maar ik heb het vermoeden dat het je wel kan helpen...
Zo te zien worden Change Journals alleen op NTFS partities bijgehouden:
[...]the NTFS file system maintains a change journal in Microsoft® Windows® 2000 and later.
Staat op de eerste pagina nota bene al te lezen. :P

Lekker woordenboek, als je niet eens weet dat vandalen met een 'n' is.


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

Uh zoals ik zei had ik geen tijd om te verder te lezen dan de eerste paragraaf...

* curry684 fluit onschuldig. O-)

Professionele website nodig?


  • _Thanatos_
  • Registratie: Januari 2001
  • Laatst online: 22-06 10:32

_Thanatos_

Ja, en kaal

Wellicht is hier wat info vandaan te sprokkelen:
http://www.sysinternals.com/ntw2k/source/filemon.shtml

日本!🎌


  • mrClass
  • Registratie: April 2002
  • Laatst online: 17-04-2025
De posts zijn allemaal heel nuttig voor de eerste stap: Kijken wanneer bestanden benaderd worden, alleen helaas bied geen enkel component in jullie links een manier om te kijken welke bytes er in een bestand veranderd worden.

Ik denk dat ik dit dus handmatig moet zien te vergelijken.

Ik heb zelf wel gelezen dat je bepaalde os API calls kan opvangen, en er zal vast een API call is die aangeeft wat er in een bestand veranderd. Aangezien ik me nog niet bezig heb gehouden met het monitoren van API calls, zou ik ook niet weten waar ik moet beginnen.

Misschien heeft één van jullie experts, wel ervaring met het monitorren van API calls, met name IO API calls?
Pagina: 1