I have found ways to use C# to extract information from outlook *.msg files, such as sender, subject, recipients, etc.
I would like to save this information as metadata (properties?) that can be viewed and sorted as columns in Windows Explorer details view.
1: Do msg files already have properties I can use for this purpose?
2: If so, is there an easy way to set these properties using C#?
3: If not, is there a way to register custom properties for msg files, and then set them programatically?
If it comes to option 3, I found the following guide to creating shell extensions: http://www.codeproject.com/Articles/830/The-Complete-Idiot-s-Guide-to-Writing-Shell-Extens
But I haven't started reading it yet, because I'm not sure it's necessary, nor am I sure it would work as a solution.
Thanks!
[ETA some follow-up based on additional research]
Apparently starting with Windows Vista, all properties displayed in Windows Explorer Detail view must be stored within the file itself.
Reading and writing of these properties in Windows Explorer is facilitated through "Property Handlers."
In Windows XP, an alternate option was available through "Column Handler" shell extensions, which allowed metadata to be stored outside of the file and viewed as columns in Windows Explorer. This option was removed beginning in Vista, supposedly because of concerns with losing metadata associated with files when they are transported or stored in a non-NTFS partition. The third party file manager Explorer2 still supports Windows-XP style column handlers in Windows Vista and 7, but it is not possible to view or edit this metadata in Windows Explorer.
As far as I can tell, the Outlook *.msg file format does not have any properties associated with it by default in Windows 7. It may be possible to write a property handler for the file type, but doing so is beyond my skill set.