代码改变世界

VS2010自定义新建文件模版

2011-10-18 17:22  Eric.Hu  阅读(516)  评论(0编辑  收藏  举报

  对于具有规定机器的开发人员,对新建的文件自动添加版本,添加人,添加时间等信息。

  具体操作如下:

  1、打开VS2010安装目录,如:I:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates

  在这个目录下,你将看到要创建各种类型的目录列表,打开你要设置的文件,如:CSharp 目录下的Windows Forms\2052下的Form.zip

  在此压缩包中存在的就是新建文件的模版,如果修改此Form.cs,则当你新建一个Form文件时,就会出现你定义好的模版。下边我们来看模版怎么修改。

  打开此压缩文件中的form.cs文件,你会看到$if等只能的热词,这些在新建文件时会动态解析,把结果返回到新建文件中。在新建Form时我们想添加。

  个人信息,就可以添加如下:

#region Version Info
/* ========================================================================
* 【本类功能概述】
*
* 作者:ywg 时间:$time$
* 文件名:$safeitemname$
* 版本:V1.0.1
*
* 修改者: 时间:
* 修改说明:
* ========================================================================
*/
#endregion

其中固定写死的内容,在模版上也是固定呈现的:

  $time$ 显示当前时间

  $safeitemname$ 显示当前创建文件名

  $safeprojectname$  显示当前工程名

  $year$  显示当前年份

  $projectname$ 当创建一个新 工程时,指定的工程名

  $clrversion$  当前CLR解析的版本值

  $GUID [1-10]$ 定义当前范围的GUID

  这些值都是根据你创建文件的不同,动态变化的,可以根据需要动态的及设定和添加。对于新添加的文件,我觉得如上模版可供查看,当然更加详细的功能。

  仍需要添加模版后进行手工的人为修改。

  修改完毕后,保存,zip会自动存储,其他新建文件都可以进行修改,可根据实际酌情修改需要的文件。

  2、完成要设定内容的修改后,此时需要关闭打开的VS2010窗口,开始进行修改模版的重新注册。

  注册的方法很简单,在开始——》程序中,选中VS2010下的 Visual Studio Tools 下有Visual Studio 命题提示行工具,点击打开。

  运行 devenv /setup 此过程可能要1分钟左右时间。

  注册完成后,重新打开VS2010新建文件,你将在新建的文件中,将看到新建的自定义内容。

  注:此修改后,原始模版将丢失,如果想恢复为VS2010原始模版状态,则需要事先备份对应的VS2010模版,然后按照如上方法进行注册。

  对于拥有固定机器编写代码的人员,设置模版后比较方便。

扩展参数:

clrversion 当前系统CLR版本号

GUID [1-10] 生成全局唯一标识符,可以生成10个 (例如:guid1)

itemname 打开添加新建项时输入的文件名称

machinename 当前机器的名称(如:pc1)

registeredorganization 注册的组织名

rootnamespace 命名空间名

safeitemname 保存的文件名

time 当前系统时间,格式:DD/MM/YYYY 00:00:00.

userdomain 用户所在的域

username 当前系统用户名

year 当前系统时间 YYYY.

参考模版:

//======================================================================
// Copyright (C) XXXX
// All rights reserved
//
// filename :$safeitemrootname$
// 描述 :
//
// 创建者 XXX
// CLR版本: $clrversion$
// 新建项输入的名称: $itemname$
// 机器名称: $machinename$
// 注册组织名: $registeredorganization$
// 命名空间名称: $rootnamespace$
// 文件名: $safeitemname$
// 创建系统时间: $time$
// 创建年份: $year$
//
//======================================================================

参考:

http://zhidao.baidu.com/question/211087404.html

http://kb.cnblogs.com/page/102541/