I received the following question today regarding NTFS Alternate Data Streams and it is a good topic to post:

I just found your NTFS ADS article and class (thanks!) on GotDotNet, yesterday - after seeing most everything else on ADS over the past month.  [Summary: User has been using ADS streams to store metadata and had large binary data in the main stream].  I've been basing much of what I need to do on Indexing Service, but (as far as I can discern) there's no way to get IS to index the ADSs. Is that right?  Also, I think that it is necessary to write some sort of "ADS archiving" utility, since ?only the NTFS file system retains those streams. Is that so? I thought I saw that one CD-R format also could preserve the hidden streams.

I have used this ADS to latch data to files for a long time and works great if the file is always on an NTFS file system.  You lose the streams if you email it or transport the file off to file systems formats that do not supports streams (like ISO 9660, etc).  You can write code to serialize the information in the streams, but once you reach that point is usually means you should pick another way to tie data together.  Most commercial-grade backup software supports saving the NTFS ADS streams.  I haven't seen any CD formats that support this but I really haven't look long and hard for one.  Perhaps, someone reading this can chime in. 

Indexing Service does not support ADS Streams (that I know of), but you could write an IFilter that opens up the streams and indexes the data in the streams.  I haven't seen an IFilter that does this, but it is a interesting idea and very possible.

These are great questions...Thanks!