Dela via


Använda ändringsjournalidentifieraren

NTFS-filsystemet associerar en osignerad 64-bitars identifierare med varje ändringsjournal. Journalen stämplas med den här identifieraren när den skapas. Filsystemet stämplar journalen med en ny identifierare där det befintliga uppdateringssekvensnumret (USN) antingen är eller kan vara oanvändbart.

NTFS-filsystemet stämplar om till exempel en ändringsjournal med en ny identifierare när en volym flyttas från en version av NTFS till en annan och sedan tillbaka. En sådan flytt kan ske i en miljö med dubbel start eller när du arbetar med flyttbara medier.

Om du vill hämta identifieraren för den aktuella ändringsjournalen på en angiven volym använder du FSCTL_QUERY_USN_JOURNAL-kontrollkoden. Om du vill utföra detta och alla andra ändringsjournalåtgärder måste du ha systemadministratörsbehörighet. Du måste alltså vara medlem i gruppen Administratörer.

När en administratör tar bort och återskapar ändringsjournalen, till exempel när det aktuella USN-värdet närmar sig det högsta möjliga USN-värdet, börjar USN-värdena igen från noll. När NTFS-filsystemet stämplar en journal med en ny identifierare i stället för att återskapa journalen återställs inte USN till noll utan fortsätter från aktuellt USN. I båda fallen är alla befintliga USN:er mindre än framtida USN:er.

När du behöver information om en specifik uppsättning poster använder du FSCTL_QUERY_USN_JOURNAL kontrollkod för att hämta identifieraren för ändringsjournalen. Använd sedan FSCTL_READ_USN-JOURNAL-kontrollkoden för att läsa relevanta journalposter. NTFS-filsystemet returnerar endast poster som är giltiga för journalen som anges av identifieraren.

Din applikation behöver både posternas USN och identifieraren för att läsa journalen. Det här kravet ger en integritetskontroll för fall där ditt program bör ignorera befintliga poster i filen och där poster skrevs i tidigare instanser av journalen för samma volym.

Om du vill hämta de poster som du är intresserad av måste du börja med den äldsta posten (dvs. med det lägsta USN) och genomsöka framåt tills du hittar den första posten av intresse.