Šta je novo?

low level device access

VicTheTrader

Slavan
Učlanjen(a)
28.10.2004
Poruke
76
Poena
309
Kako se pristupa disku na niskom nivou(citanje i pisanje po blokovima) pod winxp i c++/c#?
 
Možeš preko funkcije DeviceIoControl iz windows.h.

Pročešljaj izvorni kod RaWrite-a, pisan je u Delphiju ali se koriste WinAPI funkcije pa odatle možeš videti šta i kako. Zanemari pozive iz diskio.dll, oni se koriste samo ako je u pitanju Windows 9x. Na NT-u se koristi IOCTL, pogledaj WinIOCTL.pas i BlockDev.pas. Obrati pažnju na procedure TNTDisk.ReadPhysicalSector i TNTDisk.WritePhysicalSector (kad budeš prevodio na C, Pointer zameni sa void*, za ostalo ćeš se snaći).
 
Poslednja izmena:
Možeš preko funkcije DeviceIoControl iz windows.h.

Pročešljaj izvorni kod RaWrite-a, pisan je u Delphiju ali se koriste WinAPI funkcije pa odatle možeš videti šta i kako. Zanemari pozive iz diskio.dll, oni se koriste samo ako je u pitanju Windows 9x. Na NT-u se koristi IOCTL, pogledaj WinIOCTL.pas i BlockDev.pas. Obrati pažnju na procedure TNTDisk.ReadPhysicalSector i TNTDisk.WritePhysicalSector (kad budeš prevodio na C, Pointer zameni sa void*, za ostalo ćeš se snaći).

Hvala!
 
Nazad
Vrh Dno