Omdirigér al fil IO i Windows

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg bruger et virtuelt filsystem (PhysFS), og jeg kan lide hele applikationen til at lave fil IO gennem denne VFS (der inkluderer tredjepartsbiblioteker).


Hvordan kan jeg omdirigere alle IO-operationer (C FILE* objekter og C ++-strømme) gennem denne VFS i Windows?


Også et beslægtet spørgsmål. Er fil IO omdirigere et fælles træk ved OS API'er? Vil det være nemt for mig at sende min ansøgning?

Bedste reference


API-hooking er nok den eneste måde at løse problemet på. Hooking kan gøres ved hjælp af tredjeparts hjælperbiblioteker som omkørsler og nogle andre. Denne metode er både ikke-trivial og ikke bærbar. I teorien kan du bruge en filsystemfilterdriver, men denne måde er meget mere kompliceret og kræver en kernel-mode driver (som er en PITA til at udvikle). [2]