【实战学习c#】为程序设置版本和帮助信息
【实战学习c#】为程序设置版本和帮助信息
1实战说明
我们常在使用一款计算机软件的时候,能够看到其版本、公司及著作人等信息。如下图1所示。那我们应该如何设置软件的版本和帮助信息呢?我们以Visual Studio 2015 为例进行演示。
2预备知识
软件的信息主要在AssemblyInfo.cs中设置程序集。
2.1 通过代码配置AssemblyInfo文件
.net工程的Properties文件夹下自动生成一个名为AssemblyInfo.cs的文件,内部包含了一些属性标记,如版本信息等。一般情况下我们很少直接改动该文件。
单击后会出现如下代码,如下所示。
1 using System.Reflection; 2 using System.Runtime.CompilerServices; 3 using System.Runtime.InteropServices; 4 5 // 有关程序集的一般信息由以下 6 // 控制。更改这些特性值可修改 7 // 与程序集关联的信息。 8 [assembly: AssemblyTitle("SetAssemblyInfo")] 9 [assembly: AssemblyDescription("")] 10 [assembly: AssemblyConfiguration("")] 11 [assembly: AssemblyCompany("")] 12 [assembly: AssemblyProduct("SetAssemblyInfo")] 13 [assembly: AssemblyCopyright("Copyright © 2017")] 14 [assembly: AssemblyTrademark("")] 15 [assembly: AssemblyCulture("")] 16 17 //将 ComVisible 设置为 false 将使此程序集中的类型 18 //对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型, 19 //请将此类型的 ComVisible 特性设置为 true。 20 [assembly: ComVisible(false)] 21 22 // 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID 23 [assembly: Guid("f4f0aad3-3856-4deb-bff1-f4003bbe5a24")] 24 25 // 程序集的版本信息由下列四个值组成: 26 // 27 // 主版本 28 // 次版本 29 // 生成号 30 // 修订号 31 // 32 //可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值, 33 // 方法是按如下所示使用“*”: : 34 // [assembly: AssemblyVersion("1.0.*")] 35 [assembly: AssemblyVersion("1.0.0.0")] 36 [assembly: AssemblyFileVersion("1.0.0.0")]
2.1.1 AssemblyTitle属性
该属性定义程序集标题。其构造函数的语法格式如下:
public AssemblyTitleAttribute(string title);
可见其只包含一个字符串型参数title,也即修改参数即可修改程序集的标题。
2.1.2 AssemblyDescription属性
该属性定义程序集的描述。其构造函数的语法格式如下:
public AssemblyDescriptionAttribute(string description);
只包含一个字符串型参数description,如果添加程序集的描述即可通过修改该参数实现。
2.1.3 AssemblyConfiguration属性
该属性定义程序集的配置信息,如:零售、发布、调试等,.NET运行时没有使用此属性。其构造函数的语法格式如下:
public AssemblyConfigurationAttribute(string configuration);
2.1.4 AssemblyCompany
该属性定义程序集的公司信息。
2.1.5 AssemblyProduct
该属性定义程序集的产品名称。
2.1.6 AssemblyCopyright
该属性定义程序集的版权信息。
2.1.7 AssemblyTrademark
该属性定义程序集的商标信息。
2.1.8 AssemblyVersion
定义程序集的版本信息。,该版本号由4个值组成,分别为:主版本、次版本、生成号和修订号组成。
由上可知,通过对AssemblyInfo内这些属性值的修改,可以达到想要的设置效果。
2.2 通过傻瓜式操作完成设置
我们实际上通过另一个形式操作该文件。那就是通过在鼠标右键点击项目的属性进入“应用程序”->“程序集信息”,然后修改信息。如下图所示。
3参考文献
相关文章
- C#-Socket(TCP)
- C#-窗体移动
- C# Regex类用法
- EF+LINQ事物处理 C# 使用NLog记录日志入门操作 ASP.NET MVC多语言 仿微软网站效果(转) 详解C#特性和反射(一) c# API接受图片文件以Base64格式上传图片 .NET读取json数据并绑定到对象
- C#不用union,而是有更好的方式实现 .net自定义错误页面实现 .net自定义错误页面实现升级篇 .net捕捉全局未处理异常的3种方式 一款很不错的FLASH时种插件 关于c#中委托使用小结 WEB网站常见受攻击方式及解决办法 判断URL是否存在 提升高并发量服务器性能解决思路
- C#编译器优化那点事 c# 如果一个对象的值为null,那么它调用扩展方法时为甚么不报错 webAPI 控制器(Controller)太多怎么办? .NET MVC项目设置包含Areas中的页面为默认启动页 (五)Net Core使用静态文件 学习ASP.NET Core Razor 编程系列八——并发处理
- C#中的函数式编程:递归与纯函数(二) 学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面
- 【卷土重来之C#学习笔记】(二)c#编程概述
- C#学习记录——C#编写串口程序
- C#学习记录——.NET Framework的组成及C#程序的执行过程
- 【C#】 =>符号
- c#语言学习笔记(1)
- C#,图论与图算法,输出无向图(Un-directed Graph)全部环(cycle)的算法与源代码
- 总结C#学习中的一些基础知识
- C# 通过socket实现UDP 通信
- [C#] Direct2D 学习笔记 (一)vb.net转换为c#
- C# 坦克游戏大战中学习相关类(Closing与Closed区别)
- C#中sizeof的用法
- C# 基于任务的异步模式的创建与使用的简单示例
- C#与Java对比学习:类型判断、类与接口继承、代码规范与编码习惯、常量定义
- 微软收购Xamarin或许对C#开发者是个好消息
- C# Task启动带参数和返回值的函数任务
- 【C#】获取桌面分辨率宽高(是否包含任务栏)
- C# 生成树 递归和非递归效率对比 5万左右的数据量
- c#类的定义,c#中的关健字,C#标识符
- C#与.NET Framework c#编程语言,和java是一样的。(c#,java) -->javaweb,asp.net