VS 2005/2008生成程序的自动版本号问题
来源:互联网 发布:java实现银行转账 编辑:程序博客网 时间:2024/06/06 03:54
一直以来版本号都是我自己手工写的,两个原因:一是版本方便,省得出现很多版本自己都乱,二是不知道怎么设置。研究了一下终于明白怎么设置了:
assemblyInfo.cs文件内容
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的常规信息通过下列属性集
// 控制。更改这些属性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("WindowsFormsApplication4")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Lenovo")]
[assembly: AssemblyProduct("WindowsFormsApplication4")]
[assembly: AssemblyCopyright("Copyright © Lenovo 2008")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 使此程序集中的类型
// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型,
// 则将该类型上的 ComVisible 属性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("e6cc7d53-524e-450a-a5f0-75d5f4711982")]
// 程序集的版本信息由下面四个值组成:
//
// 主版本
// 次版本
// 内部版本号
// 修订号
//
// 可以指定所有这些值,也可以使用“内部版本号”和“修订号”的默认值,
// 方法是按如下所示使用“*”:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
每次修改我都是把
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
两个版本号都改,所以一直也没有出现过错误,但是按照它本身的说明使用自动版本号的话应该成:
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.0.0")]
但是这样程序中取回的版本号还是1.0.0.0,如果改成
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.*")]
则取回的版本号成了:1.0.*
问题出在哪?后经实现发现只要屏蔽AssemblyFileVersion就可以了。
完成后的
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的常规信息通过下列属性集
// 控制。更改这些属性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("WindowsFormsApplication4")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Lenovo")]
[assembly: AssemblyProduct("WindowsFormsApplication4")]
[assembly: AssemblyCopyright("Copyright © Lenovo 2008")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 使此程序集中的类型
// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型,
// 则将该类型上的 ComVisible 属性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("e6cc7d53-524e-450a-a5f0-75d5f4711982")]
// 程序集的版本信息由下面四个值组成:
//
// 主版本
// 次版本
// 内部版本号
// 修订号
//
// 可以指定所有这些值,也可以使用“内部版本号”和“修订号”的默认值,
// 方法是按如下所示使用“*”:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.*")]
//[assembly: AssemblyFileVersion("1.0.0.0")]
这样再取就是自动版本号了。
估计M$的说明不是很清楚,上面只写着改成1.0.*,但是忘记说把后面的FileVersion给注释掉了。
按照这个格式出来的版本号,内部修订版本号的位置出现的是2000年1月1日到编译日期的天数,内部修订号是当天从0点到当前时间的刻度数。
- VS 2005/2008生成程序的自动版本号问题
- .net 程序集自动生成版本号
- VS之版本-获取编译时间-用于自动生成版本号
- 程序集版本最后一位使用SVN版本号的自动生成方法
- 程序集版本最后一位使用SVN版本号的自动生成方法
- [python]自动生成版本号
- c# 自动生成版本号
- SVN自动生成版本号
- VS 版本号问题
- 获取程序编译时间, 用于自动生成版本号
- VS 2005 and VS 2008 Tip: 自动生成Property
- VS之版本-编译时自动生成版本-自动获取svn版本号
- VS开发中自动版本号的设置-SubWCRev命令
- 利用subwcrev.exe工具自动生成VS开发工具中的版本号
- VC自动生成软件版本号
- C# VS2008, VS2010 .NET 使用 SVN 的自动生成版本号
- 工具——基于SVN自动生成版本号的方法
- Java自动生成H5游戏资源版文件的版本号
- FLTK VC++下配置
- Push注册机制
- proxool连接池的使用和监控
- 观察者模式(Observer)
- Action中获取request, response对象的方法
- VS 2005/2008生成程序的自动版本号问题
- 有些人,有些事,有些话,有些爱
- 招聘网站截图,原创呀
- 使用密匙让putty(或ssh)自动登录Linux遇到几个问题的解决方法
- 使用 MakeCAB.exe创建CAB文件
- 抽象工厂(Abstract factories)
- 避免在Java中使用Checked Exception
- winform c#截取图片的某个部分
- java设计模式之Singleton(单态)