如何在VS2008中使自定义模板实现与项目默认模板同样效果
最近一直想做一个基于Micro Framework 的扩展模板,但是网上制作模板的方式(Export的方式google一下就可以找到),只能将自定义模板加到My Templates 下面,但这样本人认为显得是不是很不专业?要是能把自己的模板向SDK那样,增加到左边的Project Type树单独的一个分类,是不是很专业哦!
要想制作VS2008的模板,我首先想到的就是VS2008的SDK,于是我下载了VS2008的SDK 它里面有一篇专门的关于如何增加Project Type的文章,并且含有一个写好的例子:IronPython,但是编译运行该实例后只能在SDK特有的“Microsoft Visual Studio 2008 under Experimental hive”上增加IronPython类型。但是如果用户没有安装VS2008SDK那么这种方法就会行不通。
经过对VS2008SDK的研究,并没有实现我想达到的效果,我一时陷入迷茫,该怎么办呢?
既然要实现在VS2008中自定义模板,与其本身自带的项目一样的模板效果,那么一定要找到VS2008默认那些模板的位置,经过查找可以发现其存在于“C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ProjectTemplates"
找到后我根据对该文件夹的分析,并与VS2008新建项目的层级进行对照,很自然的想到在C:"Program Files"Microsoft Visual Studio 9.0"Common7"IDE"ProjectTemplates"CSharp下创建一个文件夹暂时命名为Tuojie Framework。我想这样应该可以了吧,结果很令我失望。
我在搜索了一些文件都没有发现什么线索后认为,一定是写在注册表了。但我在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\VSTemplate 下面只有UserFolder和CacheFolder,这说明VS2008加载模板时一定是向Photoshop加载扩展程序时反射了指定文件夹。也就是说,我只要考到文件下,就可以了?我又一次陷入了困惑。
我继续在google 上搜索 Vs2008模板发现了“VS2008中文版安装ASP.NET 3.5 Extensions模板遗失解决方法”的文章。知道了"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe"还可以增加参数setup,我试着运行了一下,重起了VS2008,果真实现了我想要的效果,接下来我又用网上最常用的制作模板的方法制作了两个模板放到"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ProjectTemplates\CSharp\Tuojie Framework\1033"下再次运行了"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe /setup" 命令。完成了我要运行的效果,如图:
具体操作步骤:
1.在"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ProjectTemplates\CSharp\" 新建Tuojie Framework
2.根据“http://msdn.microsoft.com/zh-cn/library/xkh1wxd8.aspx”生成模板。
3.将模板拷贝到"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ProjectTemplates\CSharp\Tuojie Framework\1033"下。
4.运行"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe /setup" 命令
5.重启VS2008。