James Hawkins wrote:
+ static const WCHAR Create[] = { + 'C','R','E','A','T','E',' ','T','A','B','L','E',' ', + '`','_','S','t','r','e','a','m','s','`',' ','(',' ', + '`','N','a','m','e','`',' ','C','H','A','R','(','5','6',')',' ', + 'N','O','T',' ','N','U','L','L',',',' ','`','D','a','t','a','`',' ', + 'O','B','J','E','C','T',' ','P','R','I','M','A','R','Y',' ', + 'K','E','Y',' ','`','N','a','m','e','`',')',0};
This is wrong as the _Streams table shouldn't appear in the _Tables table. Also, changes added to this table won't be reflected in the actual streams in the .msi file. I think that the best way to implement this is to return a custom view from TABLE_CreateView that is implemented on top of OLE structured storage functions. -- Rob Shearman