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$ 文件名

到此结束。

其他参数请指教。

Visual Studio动态生成版权信息的更多相关文章

  1. Visual Studio 不生成.vshost.exe和.pdb文件的方法【转】

    Visual Studio 不生成.vshost.exe和.pdb文件的方法[转] 使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost ...

  2. C#动态生成图书信息XML文件

    通过C#动态生成图书信息XML文件,下面有个不错的示例,需要的朋友可以参考下 通过C#动态生成图书信息XML文件(Books.xml),文件如下: 复制代码代码如下: <?xml version ...

  3. 让InstallShield 2015 Limited Edition for Visual Studio 2015生成的setup.exe双击时以管理员权限运行

    转载:http://blog.csdn.net/zztoll/article/details/52096700 如题,如何让InstallShield 2015 Limited Edition for ...

  4. 第三百三十四节,web爬虫讲解2—Scrapy框架爬虫—Scrapy爬取百度新闻,爬取Ajax动态生成的信息

    第三百三十四节,web爬虫讲解2—Scrapy框架爬虫—Scrapy爬取百度新闻,爬取Ajax动态生成的信息 crapy爬取百度新闻,爬取Ajax动态生成的信息,抓取百度新闻首页的新闻rul地址 有多 ...

  5. 十三 web爬虫讲解2—Scrapy框架爬虫—Scrapy爬取百度新闻,爬取Ajax动态生成的信息

    crapy爬取百度新闻,爬取Ajax动态生成的信息,抓取百度新闻首页的新闻rul地址 有多网站,当你浏览器访问时看到的信息,在html源文件里却找不到,由得信息还是滚动条滚动到对应的位置后才显示信息, ...

  6. Visual Studio动态代码生成的实现基础

    这篇文章讨论以下3个问题: 1.代码生成器应该做什么 2.大多数代码生成器的缺点 3.动态代码生成实现的基础 代码生成器应该做什么? 我认为,目标是加快项目开发,方式是减少重复代码手工操作,实现是用过 ...

  7. Visual Studio 不生成.vshost.exe和.pdb文件的方法

    使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost.exe」和「.pdb」的文件. 一.先解释一下各个文件的作用: .pdb文件: 程 ...

  8. 修改Visual Studio项目中程序集信息默认公司名称的两种方法

    这个公司名就是安装系统时注册的单位名称.可以通过修改注册表修改 Windows 系统的注册信息,方法如下:1.在开始"运行"中输入regedit,打开注册表编辑器.2.依次展开:H ...

  9. Visual Studio自动生成XML类和JSON类

    Visual Studio 2013及以上版本提供了一个非常实用的功能.可以根据xml文档或json文档自动生成类.有了这个工具反序列化时就不用再手动写类并且实现了强类型操作. 步骤 1. 准备一份j ...

随机推荐

  1. mybatis源码解读(四)——事务的配置

    上一篇博客我们介绍了mybatis中关于数据源的配置原理,本篇博客介绍mybatis的事务管理. 对于事务,我们是在mybatis-configuration.xml 文件中配置的: 关于解析 < ...

  2. linux 关于Apache默认编码错误 导致网站乱码的解决方案

    Apache默认编码UTF-8在解析A网站的时候没有任何问题,当运行B网站时出现的"蝌蚪文"乱码问题   最近经常有同学在使用LAMP/WAMP时,遇到这样的编码错误问题: A网站 ...

  3. vue config.js配置生产环境和发布环境不同的接口地址问题

    第一步,分别设置不同的接口地址 首先,我们分别找到下面的文件: /config/dev.env.js /config/prod.env.js 其实,这两个文件就是针对生产环境和发布环境设置不同参数的文 ...

  4. Python_字符串查找与分隔

    #字符串常用方法 s='apple,peach,banana,peach,pear' #返回第一次出现的位置 print(s.find('peach')) #指定位置开始查找 print(s.find ...

  5. Linux Ubuntu 16.04 初次安装使用总结zzz

    装了两天的ubuntu系统终于算是勉强能用了,来来回回装了有三四次,期间出了各种各样的毛病.但是还是被我的Google大法给治好了.为了装这个系统,算是耗了两天的时间,啥事情都没干,干耗在这上面了.所 ...

  6. 管理和安装 chart - 每天5分钟玩转 Docker 容器技术(168)

    安装 chart 当我们觉得准备就绪,就可以安装 chart,Helm 支持四种安装方法: 安装仓库中的 chart,例如:helm install stable/nginx 通过 tar 包安装,例 ...

  7. define 的全部使用方法

    typedef的总结,以下是引用的内容(红色部分是我自己写的内容). 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如: char* pa, pb; // 这 ...

  8. jmeter接口测试报java.net.SocketException: Socket closed错误。

    如题,jmeter报出java.net.SocketException: Socket closed,我查询了下,服务器是正常的,可以返回数据,基本确定问题出在我这边jmeter.查询原因,看到有人说 ...

  9. Windows下配置 Nginx + PHP

    背景 经常倒腾系统,徘徊于 Windows 的便利和 Linux 的魔性,一旦折腾系统基本配置都要重弄,特此记录对 Nginx和PHP的基本启动.重启和退出 网上经验 网上这种东西一搜一大把,也有很多 ...

  10. centos系统查看系统版本、内核版本、系统位数、cpu个数、核心数、线程数

    centos查看系统版本 cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 1)查看centos内核的版本: [root@loc ...