【实战学习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#开发实战1200例

Visual C#从入门到精通

时间: 2024-12-25 21:42:24

【实战学习c#】为程序设置版本和帮助信息的相关文章

linux学习笔记--vim程序编辑器

1,在linux系统中使用文本编辑器来编辑自己的linux参数配置文件是一件很重要的事情,因此系统管理员至少应该要熟悉一种文本编辑器. 2,不同的linux distribution各有不同的附加软件,linux命令行界面下的文本编辑器有Emacs,pico,nano,joe与vim 3,学习vim的重要性 (1)所有的UNIX Like系统都内置vi文本编辑器,其他的文本编辑器不一定存在 (2)很多软件的编辑接口都会主动调用vi (3)vim具有程序编辑的能力,可以主动以字体颜色辨别语法的正确

Silverlight Telerik 学习之主题的设置

Telerik控件版本:RadControls for Silverlight Q1 2013 当前的Telerik Silverlight 控件支持以下主题 Office Black - 这是默认主题,无需加载其它任何dll文件. Office Blue - 引用 Telerik.Windows.Themes.Office_Blue.dll. Office Silver - 引用 Telerik.Windows.Themes.Office_Silver.dll. Summer - 引用 Tel

第二十五篇 jQuery 学习7 获取并设置 CSS 类

jQuery 学习7 获取并设置 CSS 类 jQuery动态控制页面,那么什么是动态呢?我们就说一下静态,静态几乎又纯html+css完成,就是刷新页面之后,不会再出现什么变动,一个实打实的静态页面.那么动态,我们基于静态的特征说,动态:刷新页面之后,还可以发生样式改变等,就为动态. 这节课我们学习的是jQuery控制css,那么css样式都被改变了,算动态么?当然算啦,刷新页面之后发生了改变,就已经不是静态了,只要是变动了,就算是啦. 我们这节课学习四个控制css的方法: addClass(

实战第一个云程序

一. 摘要 首先圣殿骑士很高兴云计算系列能得到大家的关注和支持,这个系列准备了几个月,终于在今天发布第一篇了(由于文章太长,拆成了两篇,这是其中一篇).在这几个月中通过不断的使用和实践,对云计算总算有了一个较粗浅的认识,所以也希望能够和大家一起分享.在发布这篇文章之前也考虑了很久,因为一开始就讲概念的话,势必会得不到很好的效果,毕竟大家都不太熟悉这个新事物.与其"人云亦云"还不如先来一个简单的实例,所以我就先选择一个实践应用来看到底云计算能给我们带来什么好处,从开发者角度,随着这个概念

Docker虚拟化实战学习——基础篇(转)

Docker虚拟化实战学习--基础篇 2018年05月26日 02:17:24 北纬34度停留 阅读数:773更多 个人分类: Docker Docker虚拟化实战和企业案例演练 深入剖析虚拟化技术概念和应用场景 虚拟化,一是项技术--,是一种资源解决方案. 虚拟化技术是将物理资源转变为逻辑上可以管理的资源,以打破物理结构之间的壁垒,使计算元件运行在虚拟的基础上,而不是真实的物理资源上. 通过虚拟化技术,可以将物理资源转变为逻辑资源(虚拟机),应用程序服务运行在虚拟资源上,而不是真实的物理机上.

Windows Forms编程实战学习:第一章 初识Windows Forms

初识Windows Forms 1,用C#编程 using System.Windows.Forms; ? [assembly: System.Reflection.AssemblyVersion("1.0")] ? namespace MyNamespace { public class MyForm : Form { public MyForm() { this.Text = "Hello Form"; } [System.STAThread] public s

osgi实战学习之路:5.生命周期及利用命令、装饰者模式实现基于socket交互Bundle命令demo

生命周期中关键3个类: BundleActivator 入口点,类似main方法 BundleContext Bundle上下文对象,在运行期间,为应用程序提供操作osgi框架的方法 Bundle 代表一个已安装的Bundle 接口说明: BundleActivator: public interface BundleActivator { public void start(BundleContext context) throws Exception; public void stop(Bu

Centos 7 学习之静态IP设置

原文链接:http://blog.csdn.net/johnnycode/article/details/40624403 本学习主要针对 Centos 7.0.1406 版本进行学习整理! 如果你使用 VirtualBox 配置 Centos 那么请参考我的这篇文章 Centos 7 学习之静态IP设置(续) 1.编辑 ifcfg-eth0 文件,vim 最小化安装时没有被安装,需要自行安装不描述. [plain] view plain copy # vim /etc/sysconfig/ne

C实战:强大的程序调试工具GDB

C实战:强大的程序调试工具GDB 1.基本调试 这里只列举最最常用的GDB命令. 1.1 启动GDB gdb program:准备调试程序.也可以直接进入gdb,再通过file命令加载. 1.2 添加断点 b function:为函数设置断点.b是break的缩写,除了函数名,还可以是地址.当前执行处的+/-偏移等. 1.3 运行程序 run args:开始运行程序,run后面可以加程序需要的参数,就像在命令行正常运行时那样. 1.4 单步调试 s/n/si/c/kill:s即step in,进