Visual Studio动态生成版权信息
VS2008
1.1,类文件模板:在安装目录打开CS模板文件夹(D:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\2052\Class.zip),在此文件夹下查找到Class.cs,打开编辑该模版文件。
1.2,WinForm模板:在安装目录打开WinForm模板文件夹(D:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\CSharp\Windows Forms\2052\Form.zip),在此文件夹下查找到form.cs,form.designer.cs,打开编辑该模版文件。
VS2010
2.1,类文件模板:在安装目录打开CS模板文件夹(D:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\2052\Class.zip),在此文件夹下查找到Class.cs,打开编辑该模版文件。
2.2,WinForm模板:在安装目录打开WinForm模板文件夹(D:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplatesCache\CSharp\Windows Forms\2052\Form.zip),在此文件夹下查找到form.cs,form.designer.cs,打开编辑该模版文件。
VS2015
3.1,类文件模板:在安装目录打开CS模板文件夹(C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\2052\Class),和(C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\1033\Class)在此文件夹下查找到Class.cs,打开编辑该模版文件。
3.2,WinForm模板:在安装目录打开WinForm模板文件夹(C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplatesCache\CSharp\Windows Forms\2052\Form),在此文件夹下查找到form.cs,form.designer.cs,打开编辑该模版文件。
VS2017
4.1,类文件模板:在安装目录打开CS模板文件夹(C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ItemTemplates\CSharp\Code\2052\Class),在此文件夹下查找到Class.cs,打开编辑该模版文件。
4.2,WinForm模板:在安装目录打开WinForm模板文件夹(C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\ItemTemplates\CSharp\Windows Forms\2052\Form),在此文件夹下查找到form.cs,form.designer.cs,打开编辑该模版文件。
在模板文件头部加入自定义版权信息,示例如下:
#region 描述信息
/**
* 文件名:$safeitemname$
* 类 名:$safeitemrootname$
* 命名空间:$rootnamespace$
* 当前系统用户名:$username$
* 当前用户所在的域:$userdomain$
* 当前机器名称:$machinename$
* 注册的组织名:$registeredorganization$
* 时间:$time$
* CLR:$clrversion$
* GUID: $guid1$
* 当前系统时间:$year$
* Copyright (c) $year$ 熊仔其人 Corporation. All rights reserved.
*┌─────────────────────────────────────────────────┐
*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
*│ 版权所有:熊仔其人 │
*└─────────────────────────────────────────────────┘
* * Ver 变更日期 负责人 当前系统用户名 CLR版本 变更内容
* ───────────────────────────────────
* V0.01 $time$ 熊仔其人 $username$ $clrversion$ 初版
**/
#endregion using System;
using System.Collections.Generic;
$if$ ($targetframeworkversion$ >= 3.5)using System.Linq;
$endif$using System.Text;
$if$ ($targetframeworkversion$ >= 4.5)using System.Threading.Tasks;
$endif$
namespace $rootnamespace$
{
public class $safeitemrootname$
{
}
}
保存,重启Visual Studio编辑工具,然后新建类文件,效果如下:
#region 描述信息
/**
* 文件名:Class1
* 类 名:Class1
* 命名空间:SmsSystem.Model
* 当前系统用户名:XIONGXUEHAO
* 当前用户所在的域:KINGSOFT
* 当前机器名称:BZD14582-PC
* 注册的组织名:Microsoft
* 时间:2019/1/15 16:00:27
* CLR:4.0.30319.42000
* GUID: a48d0c15-3f33-4acd-82f4-a558203ab19f
* 当前系统时间:2019
* Copyright (c) 2019 熊仔其人 Corporation. All rights reserved.
*┌─────────────────────────────────────────────────┐
*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
*│ 版权所有:熊仔其人 │
*└─────────────────────────────────────────────────┘
* * Ver 变更日期 负责人 当前系统用户名 CLR版本 变更内容
* ───────────────────────────────────
* V0.01 2019/1/15 16:00:27 熊仔其人 XIONGXUEHAO 4.0.30319.42000 初版
**/
#endregion using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace SmsSystem.Model
{
public class Class1
{
}
}
这个是样例。
参数说明
我们注意到有些参数使用了美刀符号$包括起来,这些参数占位符会自动生成一些值:
$clrversion$ 当前的CLR版本号
guid[1-10] 首先guid必须小写,后面匹配的数字也必须写,且1-10,即一个注释文件头中最多生成10个GUID。ps:如 $guid1$
$machinename$ 当前机器的名称
$registeredorganization$ 注册的组织名
$rootnamespace$ 命名空间名
$safeitemrootname$ 安全类名
$time$ 时间,格式:YYYY/MM/DD 00:00:00
$userdomain$ 用户所在的域
$username$ 当前系统用户名
$year$ 当前系统时间 YYYY
$safeitemname$ 文件名
到此结束。
其他参数请指教。