Megtalálom a fürtöt
Megtalálható-e a klaszter?
Meg tudom-e találni a fürt (ek) et (vagy hol vannak azok a helyek, ahol a fájlok fizikailag elhelyezkednek (a HDD-ben)?
Ha igen, hogyan?
Köszönjük előre!
A klaszter logikai információs egység egy csavarral. Mindegyik fájl egész számú klaszteret foglal el, de az utolsó klaszter nem használható teljesen. Tehát vannak klaszter veszteségek. Minél kisebb a klaszter mérete, annál kisebb a lehetséges különbség a méret és a kitöltett rész között - annál kisebb a klasztervesztés. De több FAT méretű.
A csavarra vonatkozó információ fizikai egysége az ágazat. Szinte mindig (a ritka speciális esetek kivételével) 512 byte. Számos ágazat (1-nél nagyobb vagy annál nagyobb egész szám) fürtöt alkot.
Egy kicsit a FAT rendszer megszervezéséről.
Általában FAT tábla van egy sor 16 vagy 32 bites (innen FAT-16 és a FAT-32, egy floppy lemez minden FAT-12) rögzíti a számát, amely egyenlő a klaszterek számát a lemezen.
A könyvtárbejegyzésben minden fájl tárolja azt a fürtszámot, amelyben a fájl eleje fekszik. A számmal ellátott FAT elem tárolja a következő klaszter számát, vagy egy speciális kódot, amely jelzi, hogy ez a fájl utolsó fürtje. És így tovább. Egy ilyen szervezetnek köszönhetően a fájl szétszóródhat bárhol a lemezen, de az operációs rendszer mindig elolvashatja az elejétől a végéig. De ha a FAT zárva van. Vegye figyelembe, hogy a csavarból érkezik el.
Hát akkor.
Ha szüksége van egy fürtszámra, ahonnan a fájl elindul, megfelelően néz ki. könyvtárbejegyzés. A katalógus megtekintése. Ezt nem tudom, talán van egy funkció Delfiben.
Ha szektorszámra van szüksége, szorozza meg a fürtszámot a klaszter méretével ágazatokban és adja hozzá a fájlrendszer kezdeti szektorát.
Infa a fürtméreten, a fájlok kezdetének szektorszáma stb. az ágazat a LOGICAL 0 számmal (nulla) van.
PS. És miért van szüksége erre, könnyebbé tehető? Én is azt akartam írni egy programot, hogy megőrizze a csavart, de aztán leesett.
Vcoder köszönöm a segítséget!
Az ötlet az, hogy törölni lehessen, de ahogyan megértetted az információ helyreállításának képtelenségét, meg kell írnod valamit a fájl helyére. És hogy leírjon valamit a helyén, ismernie kell ezt a helyet (fizikai közegben). Valószínűleg az optimális (és talán csak egyetlen) lehetőség az lesz, hogy megtalálja a klaszter (ek) számát, amelyen a fájl rögzítésre került. És aztán írja le a rögöket ezekre a klaszterekre.
Ha van Asya-knock 2444094
Csak írja át a fájlt a helyére, majd törölje azt.
Megnyitja a fájlt a Reset eljárással, és írja le, mit akar a lélek. A szám a fájlméretben vagy egy kicsit több. És akkor törli. Ez működni fog.
Hát akkor. Kérdés a mestereknek:
A DOS-ban vannak megszakadások int 25h és int 26h: resp. logikai szektorok olvasása / írása. DE. A szektorszám 16 bites DX regiszterben kerül továbbításra.
A kérdés. Van-e alternatíva ezekhez a funkciókhoz, amelyek lehetővé teszik a 65535-nél nagyobb szektorszám elküldését (pl. 32 bitet)?
mint a vwin32.vxd segítségével - Megnéztem, hogy milyen fájlok vannak megnyitva a par. meghallgassák és megtudják, melyik klaszter számokat foglalják el, de NT alatt nem fog működni. jelenlegi 9x alatt, XP alatt nem tesztelt. Példát adhatok
Vcoder
Ok, megpróbálom visszaállítani.
A BlockWrite itt, swill, akkor is használható?
ZY.Nemnogo nem értette az érvelését az ügyről: mi a dial-up? Van dial-up, mint a legtöbb ICQ felhasználó.
És semmi. Talán félsz attól, hogy egész idő alatt beszélni fogsz?
[NIKEL]
Ha ez nem nehéz, akkor dobja a [email protected]
Elvetettem, a Builder`e-ről írtam az áramot, de azt hiszem, meg fogja érteni
Vcoder, azt mondtam "átírni", és nem "másolni".
[NIKEL]
Dobd kérlek újra [email protected]
Che nem jött.