File recovery
-
So, my neighbor, who I didn't realize knew I was a 'computer person' came around last night and asked if I would be able to take a look at a friends USB drive to see if I could get anything off it. Wanting to make friends with my neighbors I said I could take a look. So, if the USB drive isn't being recognized (what I would think most users would term "not working"), then unless her USB controller fried, I'm going to have a hard time investigating something I can't communicate with. That aside, it got me onto the thought of file recovery. So, I have a few questions; Is .NET able to communicate with hardware at a low enough level that I could query the contents of a piece of hardware? (I know about the IO namespace and the ability to enumerate drives etc.). If not, am I picking back up C++? How do I go about finding resources on teaching me how to investigate, verify and re-assemble(if necessary) files. I went 4-5 pages into google searches and was just seeing data-recovery software/companies.
-
So, my neighbor, who I didn't realize knew I was a 'computer person' came around last night and asked if I would be able to take a look at a friends USB drive to see if I could get anything off it. Wanting to make friends with my neighbors I said I could take a look. So, if the USB drive isn't being recognized (what I would think most users would term "not working"), then unless her USB controller fried, I'm going to have a hard time investigating something I can't communicate with. That aside, it got me onto the thought of file recovery. So, I have a few questions; Is .NET able to communicate with hardware at a low enough level that I could query the contents of a piece of hardware? (I know about the IO namespace and the ability to enumerate drives etc.). If not, am I picking back up C++? How do I go about finding resources on teaching me how to investigate, verify and re-assemble(if necessary) files. I went 4-5 pages into google searches and was just seeing data-recovery software/companies.
hammerstein05 wrote:
Is .NET able to communicate with hardware at a low enough level that I could query the contents of a piece of hardware?
If there's an API for it, you can p/invoke it. Bear in mind that C++ will use the API then .NET should be able to - I'm not saying that it's the right tool for the job, but you can do it.
I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be
Forgive your enemies - it messes with their heads
-
hammerstein05 wrote:
Is .NET able to communicate with hardware at a low enough level that I could query the contents of a piece of hardware?
If there's an API for it, you can p/invoke it. Bear in mind that C++ will use the API then .NET should be able to - I'm not saying that it's the right tool for the job, but you can do it.
I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be
Forgive your enemies - it messes with their heads
Although you could roll your own, you might be quicker to use one of the off-the-shelf recovery programmes. PhotoRec[^] comes highly recommended, and should deal with most types of media, and most types of file. Foremost[^] is also worth a look...
Days spent at sea are not deducted from one's alloted span - Phoenician proverb
-
Although you could roll your own, you might be quicker to use one of the off-the-shelf recovery programmes. PhotoRec[^] comes highly recommended, and should deal with most types of media, and most types of file. Foremost[^] is also worth a look...
Days spent at sea are not deducted from one's alloted span - Phoenician proverb
You might want to post this against the OP so that they receive the email. They won't be notified of your reply to my answer.
I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be
Forgive your enemies - it messes with their heads
-
You might want to post this against the OP so that they receive the email. They won't be notified of your reply to my answer.
I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be
Forgive your enemies - it messes with their heads
D'oh!! Good point :) edit : had to remove previous message - seems I can't post the same message twice.
Days spent at sea are not deducted from one's alloted span - Phoenician proverb
modified on Wednesday, September 22, 2010 10:44 AM
-
So, my neighbor, who I didn't realize knew I was a 'computer person' came around last night and asked if I would be able to take a look at a friends USB drive to see if I could get anything off it. Wanting to make friends with my neighbors I said I could take a look. So, if the USB drive isn't being recognized (what I would think most users would term "not working"), then unless her USB controller fried, I'm going to have a hard time investigating something I can't communicate with. That aside, it got me onto the thought of file recovery. So, I have a few questions; Is .NET able to communicate with hardware at a low enough level that I could query the contents of a piece of hardware? (I know about the IO namespace and the ability to enumerate drives etc.). If not, am I picking back up C++? How do I go about finding resources on teaching me how to investigate, verify and re-assemble(if necessary) files. I went 4-5 pages into google searches and was just seeing data-recovery software/companies.
Although you could roll your own, you might be quicker to use one of the off-the-shelf recovery programmes - I think writing something like this would be a pretty major undertaking. Here are a couple of pretty good packages which might get your neighbour's data back fairly quickly :- PhotoRec[^] comes highly recommended, and should deal with most types of media, and most types of file. Foremost[^] is also worth a look...
Days spent at sea are not deducted from one's alloted span - Phoenician proverb
-
Although you could roll your own, you might be quicker to use one of the off-the-shelf recovery programmes - I think writing something like this would be a pretty major undertaking. Here are a couple of pretty good packages which might get your neighbour's data back fairly quickly :- PhotoRec[^] comes highly recommended, and should deal with most types of media, and most types of file. Foremost[^] is also worth a look...
Days spent at sea are not deducted from one's alloted span - Phoenician proverb
Oh, If the drive is that bad I will be suggesting a third party tool. My questions were mainly based around making this a research project for myself, no timescales. I'm interested in understanding. Whenever I see pieces of software where people charge such a varying amount for, I'm always curious as to the true effort involved. I don't expect this to be a 3 hour coding project, but I would like to find more reading material on it