FAQ SearchLogin
Tuxera Home
View unanswered posts | View active topics It is currently Fri May 14, 2021 16:38



Post new topic Reply to topic  [ 4 posts ] 
invalid character in deleted filename 
Author Message

Joined: Wed Jun 23, 2010 09:47
Posts: 5
Post invalid character in deleted filename
Hi All,

I don't know this is right place or not for my question.

I am writing C++ code using windows API which is scanning for deleted file. The problem is that for filenames with greater than 75 characters there is non-printable character after 75th character. I didn't understand the reason for non-printable character.

Can anyone gave me a hint for non-printable character?
Surely there is a problem in my ntfs file scaning code?

Regards,


Tue Jun 14, 2011 15:53
Profile
NTFS-3G Lead Developer

Joined: Tue Sep 04, 2007 17:22
Posts: 1286
Post Re: invalid character in deleted filename
Hi,

Quote:
Can anyone gave me a hint for non-printable character?

A code put at an end of sector to make sure the sector was fully written ?

Regards

Jean-Pierre


Tue Jun 14, 2011 16:47
Profile

Joined: Wed Jun 23, 2010 09:47
Posts: 5
Post Re: invalid character in deleted filename
jpa wrote:
A code put at an end of sector to make sure the sector was fully written ?


Thanks.

Is there any documentation or anything where i can get details on this?

Regards,


Wed Jun 15, 2011 13:11
Profile

Joined: Wed Jun 23, 2010 09:47
Posts: 5
Post Re: invalid character in deleted filename
jpa wrote:
A code put at an end of sector to make sure the sector was fully written ?


This saved lot of my time. Thanks again.

After reading the documentation, found that i have to replace the end of sector marker with original char present in Update Sequence Array.

I am currently using the following struct to read MFT FILE HEADER INFO.

Code:
struct NTFS_MFT_FILE
{
   char      szSignature[4];      // Signature "FILE"
   WORD      wFixupOffset;           // offset to update sequence
   WORD      wFixupSize;      // Size of fixup-list +1
   LONGLONG   n64LogSeqNumber;   // log file seq number
   WORD      wSequence;      // sequence nr in MFT
   WORD      wHardLinks;      // Hard-link count
   WORD      wAttribOffset;      // Offset to seq of Attributes
   WORD      wFlags;         // 0x01 = NonRes; 0x02 = Dir
   DWORD      dwRecLength;      // Real size of the record
   DWORD      dwAllLength;      // Allocated size of the record
   LONGLONG   n64BaseMftRec;      // ptr to base MFT rec or 0
   WORD      wNextAttrID;      // Minimum Identificator +1
   WORD      wReserved;      // reserverd
   DWORD      dwMFTRecNumber;   // Number of this MFT Record
   WORD      wUpdateSeqNumber;  // Update Sequence Number(end of sector marker?)
   WORD      wFixUpChar;           // Real Character to be replaced (need only one char so no array)
};


Should wReserved and dwMFTRecNumber fields be needed in Windows 7.

Can you kindly mention any problem in the struct?

second how to find the offset where i should replace the end of sector marker with original char from update sequence array?

Regards,


Mon Jun 20, 2011 15:31
Profile
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 4 posts ] 


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Original forum style by Vjacheslav Trushkin.