Article View: borland.public.cppbuilder.nativeapi
Article #6029Re: Need help with where to start
From: PeterS
Date: Mon, 20 Jun 2005 17:28
Date: Mon, 20 Jun 2005 17:28
56 lines
3295 bytes
3295 bytes
Hi Andrue, Wow...Thank you so much for the precious information you provided me. I do highly appreciate your efforts :) Best Regards "Andrue Cope [TeamB]" <no.spam@not.a.valid.address> wrote in message news:42b67d91$1@newsgroups.borland.com... > PeterS wrote: > > > I was asked at my work to start developing a file recovery tool that > > can work on FAT, FAT32 and NTFS. Although I am not sure where I > > should start? I have tried search engines but no success :( > > FATx will be fairly straightforward but NTFS is quite a complicated > beast. For NTFS documentation see: > > http://linux-ntfs.sourceforge.net/ntfs/index.html > > This documentation is very good. It's not 100% correct nor complete but > it's pretty close. > > There are two comments I'd make about this though: > > Firstly data recovery is like brain surgery. If you get it wrong you > often make the situation worse and DIY is often inadvisable. All > serious data recovery companies take a sector by sector copy (usually > called an image) of the problem drive then work on that image (or lay > the image down on a 'doner' drive). > > Never, ever, work on the original unit and you should encourage and > assist your potential customers to follow this procedure. > > I'll also say that 'fixing' the filesystem is often not neccessary and > frequently impractical. It's usually enough to be able to work around > the corruption and pull off surviving data. After that the original > drive can be reformatted and the recovered data copied back on. This > strategy also fits in with the basic rule mentioned above. > > Secondly, the code is going to have to be 'bullet proof' and very > suspicious of every structure it reads. Typical programmers have enough > difficulty writing bullet proof code when they are working with good, > reliable data. Data recovery code is going to be working with poor and > frequently downright corrupt data. We were guarding against buffer > overruns before most people knew what the Web was :) > > Linux source code will give you some useful pointers but I'm a little > sceptical about its ability to handle corrupt file systems. Not that > I've looked at it much but it doesn't look to be anywhere near as > paranoid as the stuff I churn out :) > -- > Andrue Cope [TeamB] > [Bicester, Uk] > http://info.borland.com/newsgroups/guide.html
Technical Details
Message-ID:
<42b6d298@newsgroups.borland.com>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!news-out.nntp.be!propagator2-sterling.newsfeeds.com!in.nntp.be!caladan.landsraad.net!newsgroups.borland.com!not-for-mailReferences:
<42b5c8bc@newsgroups.borland.com> <42b67d91$1@newsgroups.borland.com>Show Full Headers
Complete Article Headers
X-Google-Thread: 10cc67,a794610cdc904357 X-Google-Attributes: gid10cc67,public X-Google-Language: ENGLISH,ASCII-7-bit From: "PeterS" <racbids_nospam@yahoo.com> Newsgroups: borland.public.cppbuilder.nativeapi References: <42b5c8bc@newsgroups.borland.com> <42b67d91$1@newsgroups.borland.com> Subject: Re: Need help with where to start Date: Mon, 20 Jun 2005 10:28:47 -0700 Lines: 58 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 NNTP-Posting-Host: 196.202.3.64 Message-ID: <42b6d298@newsgroups.borland.com> X-Trace: newsgroups.borland.com 1119277720 196.202.3.64 (20 Jun 2005 07:28:40 -0700) Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!news-out.nntp.be!propagator2-sterling.newsfeeds.com!in.nntp.be!caladan.landsraad.net!newsgroups.borland.com!not-for-mail