Of course, creating Visual Studio projects with the automation model that I showed in my last post is not only tricky but also fragile if there is a collision with project templates names, something that happened during the Visual Studio 2012 beta and that was fixed after I reported it:
EnvDTE80.Solution2.GetProjectTemplate(“ClassLibrary.zip”, “VisualBasic”) returns Windows Metro template
http://connect.microsoft.com/VisualStudio/feedback/details/728382/envdte80-solution2-getprojecttemplate-classlibrary-zip-visualbasic-returns-windows-metro-template
Yesterday I learned from a question in the MSDN VSX forum that other SDK tools for Visual Studio, such as the Windows Phone 8.0 SDK, can also introduce templates that cause name collisions.
I have documented it here:
BUG: EnvDTE80.Solution2.GetProjectTemplate returns wrong template for ClassLibrary if Windows Phone SDK installed
http://www.mztools.com/Articles/2013/MZ2013023.aspx
And I have opened a bug at Microsoft Connect:
EnvDTE80.Solution2.GetProjectTemplate(“ClassLibrary.zip”, “VisualBasic”) returns Windows Phone template
http://connect.microsoft.com/VisualStudio/feedback/details/792423/envdte80-solution2-getprojecttemplate-classlibrary-zip-visualbasic-returns-windows-phone-template