Although I'm still planning at this point to use the new VS SDK 2005 MPF classes, I want to continue to support the current Votive VS 2003 version for a little while. I at least want to clean up some bugs and make it a little more robust before moving on.
To help me in this endeavor, I've created a new project called "Sconce". What is it? Well, it's basically all of the Visual Studio infrastructure code that took up 90% of the Votive project. Why did I move it to another project? For a couple of reasons. The main reason is because I always wanted to have this isolation, which up until now I accomplished via namespace separation (Microsoft.Tools.WindowsInstallerXml.VisualStudio.Infrastructure). However, I needed to have the infrastructure code be able to support IDispatch COM marshaling. This is a long story in and of itself, which I may write another blog entry on, but suffice it to say that I needed everything to be public instead of internal. This prompted me to finally make the move to a separate DLL. Additionally, this isolation makes it very easy for us (or anybody else for that matter) to create more Visual Studio project types. I can't think of any that we'd want to make other than WiX at this point, but it does provide this infrastructure if we need it in the future.
Why the name "Sconce"? Of course I had to choose another candle-related term to fit in the WiX style. I thought Sconce sounded cool and the definitions loosely fit in with the Votive theme as well. Sconce is defined by dictionary.com as:
sconce2 ( P ) Pronunciation Key (skns)
- A decorative wall bracket for holding candles or lights.
- A flattened candlestick that has a handle.
- Slang. The human head or skull.
So, Sconce could be a holder for votive candles (although you usually don't hang votive candles on the wall, but I did say "loosely" fits). [:)]