Ok, as far as I can tell these are the various locations and methods needed to pull the binary data that appears on the summary tab of a file in Windows Explorer.
The summary tab fields referred to in this document are Title, Subject, Author, Keywords, and Comments. (Actually, to be able to save and subsequently pull summary info for the full gamut of data types I refer to below the file must reside on an NTFS 5.0 volume (meaning Win2k/XP); the exception being complex OLE documents (e.g., DOC, PPT, XLS) and certain image files (JPEG and TIFF) which store the data within the file itself and so their summary tab info is preserved on FAT32 volumes.)

  • JPEG and TIFF - The summary tab information is stored in the EXIF header section in tags with the following tag numbers:
    • 9C9B = Title
    • 9C9C = Comments
    • 9C9D = Author
    • 9C9E = Keywords
    • 9C9F = Subject

  • Other files (e.g., BMP,GIF,ICO,WMF,AVI,HTML) - To date I haven't been able to store the summary info listed above for these files. The Summary tab in Explorer displays read-only data on the image itself.


  • Complex OLE documents (includes DOC,PPS,PPT,XLS,MSI, Thumbs.db) - The summary tab information is stored inside the file within the OLE file system of the document itself. It is stored in a stream named "SummaryInformation" which has a 0xFEFF0000 (not translated from little endian format) marker at the start of the stream and a section classid of 0xE0859FF2F94F6810AB9108002B27B3D9 (again not translated from little endian). (Details of the binary format of Property Set streams graciously provided by Rainer Klute.)


  • Simple documents (have tested TXT,VBS,WSF,ZIP,TTF,MPEG, EXE,PDF,ASA,ASP,CUR,MDB,OCX,DLL,MOV) - The summary tab information is stored in an NTFS alternate data stream named ^ESummaryInformation. The stream can be accessed using the FileSystemObject in VBScript by doing:
    fso.OpenTextFile(sFileName & ":" & Chr(5) & "SummaryInformation")
    This works because OpenTextFile uses the Windows CreateFile API. The binary format of this NTFS stream is exactly the same as the SummaryInformation stream used in Complex OLE Documents.


  • Unknown (WMV,MP3) - These files store summary info but not in any of the methods listed so far. (I think the MP3s may be storing the information in ID3 tags.)