I am looking to use Visual Studio C# Express to create a simple program that will look through all files/folders on all logical drives (with an option to do this for mounted network drives if possible). I need extensive information about the files including as much metadata as possible, fullpath, file extension, and file signature if possible.
This point of this program is to hand it to a client on a thumb drive and they can give us back an encrypted file of essentially a "snapshot" of their directory structure/etc which we can play with later. It's fairly important this program has some integrity in the sense if it crashes or fails at any point.
I was planning on using this code as a base:
http://msdn.microsoft.com/en-us/library/bb513869.aspx[
^]
It looked like .NET 4 had more sophisticated ways of doing this, but the constraints are limited to older machines that may not have XP SP3.
1. What is the best method of also iterating through mounted network drives? Is it even possible?
2. Is this above code the "best choice" to iterate through the entire computer? I'm going to need to pull aforementioned data about each file and export it into XML or Access.
3. Given the possible size of the data, what is the best practice for storing this mass of information for export later into XML/db/etc?
4. What are the best practices for handling encrypting a file after we're done writing to it?