c语言获取最大软件版本号

c语言获取最大软件版本号,第1张

获取最大软件版本号是程序开发过程中常见的任务之一。在C语言中,可以通过以下步骤来获取某个软件的最大版本号:

第一步:使用C语言的文件I/O函数,打开文件,如fopen,读取软件的版本号信息,可以通过fscanf函数来获取版本号信息。

第二步:将文件中的版本号信息转换成C语言数据类型,可以使用atoi或者strtol函数将字符串转换成数值。

第三步:定义一个变量max_version,将当前读取到的版本号信息赋值给max_version,然后与下一个版本号信息进行比较,如果大于max_version,则更新max_version的值,如果小于max_version,则保持max_version的值不变。

第四步:当读取完所有的版本号信息后,max_version就是最大的版本号,然后可以根据需要进行相关处理。

以上就是的一般步骤,实际实现过程中还需要考虑一些其他因素,比如文件格式、版本号格式等。

若要使用 Visual c + + 编辑器中,单击文件菜单上的打开,并在 MyProject.rc 文件打开方式列表中选择文本。在MyProject.rc 中找到的版本资源语句。它应如下所示://///////////////////////////////////////////////////////////////////// // // Version // VS_VERSION_INFO VERSIONINFO FILEVERSION 1,0,0,1 PRODUCTVERSION 1,0,0,1 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L #else FILEFLAGS 0x0L #endif FILEOS 0x4L FILETYPE 0x1L FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "040904b0" BEGIN VALUE "Comments", "Sample Application\0" VALUE "CompanyName", "Microsoft Corp.\0" VALUE "FileDescription", "MyProject MFC Application\0" VALUE "FileVersion", "1, 0, 0, 1\0" VALUE "InternalName", "MyProject\0" VALUE "LegalCopyright", "Copyright (C) 1999\0" VALUE "OriginalFilename", "MyProject.EXE\0" VALUE "ProductName", "MyProject Application\0" VALUE "ProductVersion", "1, 0, 0, 1\0" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x409, 1200 END END 剪切从 MyProject.rc 文件版本资源并将其粘贴到一则评语下面的 MyProject.rc2 文件"添加手动编辑此资源。有关资源中的字段中的每一个含义的详细内容,请参阅帮助中的 VERSIONINFO 资源语句。替换宏 FILEVER 和 PRODUCTVER 的文件和产品数据。同样,替换宏 STRFILEVER 和 STRPRODUCTVER 的文件和产品字符串数据。添加# VS_VERSION_INFO 资源语句前立即包括VersionNo.h。现在版本资源看起来://///////////////////////////////////////////////////////////////////// // // Version // #include "VersionNo.h" VS_VERSION_INFO VERSIONINFO FILEVERSION FILEVER PRODUCTVERSION PRODUCTVER FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L #else FILEFLAGS 0x0L #endif FILEOS 0x4L FILETYPE 0x1L FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "040904b0" BEGIN VALUE "Comments", "Sample Application\0" VALUE "CompanyName", "Microsoft Corp.\0" VALUE "FileDescription", "MyProject MFC Application\0" VALUE "FileVersion", STRFILEVER VALUE "InternalName", "MyProject\0" VALUE "LegalCopyright", "Copyright (C) 1997\0" VALUE "OriginalFilename", "MyProject.EXE\0" VALUE "ProductName", "MyProject Application\0" VALUE "ProductVersion", STRPRODUCTVER END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x409, 1200 END END 创建与您的项目位于同一目录中名为 VersionNo.h 的头文件。此文件将包含以下语句,将使用在步骤 2 中的宏的定义:#define FILEVER 1,0,0,1 #define PRODUCTVER 1,0,0,1 #define STRFILEVER "1, 0, 0, 1\0" #define STRPRODUCTVER "1, 0, 0, 1\0" 注意: 添加换行符和回车换行符的最后一行。现在,MyProject.rc 文件包含 MyProject.rc2,并且 MyProject.rc2 文件包含 VersionNo.h。将使用 Visual Basic 脚本宏修改 VersionNo.h 文件的内容。宏描述控点的下方 Visual c + + BuildFinish 事件,因此它将不激发直到生成完成。每当调用此 VB 脚本代码时,它首先按固定金额、 增加内部的头文件的版本号,然后保存该文件,并将其关闭。在后续的生成过程中可执行文件中包含新的版本号。要安装并使用 VB 脚本代码,请执行以下 *** 作:打开现有的 DSM (宏观) 文件,或在 Visual c + + 中创建一个新的 DSM 文件。要创建一个新文件,请单击文件菜单上的新建、文件选项卡上选择的宏文件、 为其指定一个名称,和单击确定粘贴下面的以下 VB 脚本代码 (在 Visual c + + 中,无法安装空 DSM 文件 ; 下一步解释安装):Function GetProjectDir(FullName) 'VC++ doesn't provide any method for getting the path of the active project 'See the VB Script reference for more information on the VB Script functions 'used in this function Dim proj_path proj_path = Split(StrReverse(FullName),"\",-1,1) Dim count count = UBound(proj_path) Dim full_path full_path = "" Dim i for i = 1 to count full_path = full_path &"\" &proj_path(i) next GetProjectDir = StrReverse(full_path) End Function Sub ReplaceText(selection, count, incrementby) 'selection represents the TextSelection object 'count represents the position of the version number to be incremented 'incrementby represents a number that will be added to the existing version number selection.WordRight dsMove, count selection.WordRight dsExtend, 1 Dim str str = selection.Text str = str + incrementby selection.Text = str End Sub Sub Application_BuildFinish(numError, numWarning) 'This event will be triggered after every build of a project 'You can check numError and/or numWarning to determine if you want to continue 'If numError 0 Then 'exit sub 'Obtain the full path of the active project Dim full_path full_path = GetProjectDir(ActiveProject.FullName) full_path = full_path &"versionno.h" 'Open the VersionNo.h file Documents.Open full_path 'Obtain the TextSelection object Dim selection set selection = ActiveDocument.Selection selection.StartOfDocument 'Increment the version information ReplaceText selection, 9, 1 selection.LineDown selection.StartOfLine ReplaceText selection, 9, 1 selection.LineDown selection.StartOfLine ReplaceText selection, 10, 1 selection.LineDown selection.StartOfLine ReplaceText selection, 10, 1 ActiveDocument.Save ActiveDocument.Close End Sub 注:此代码是不受支持的示例。为您生成的方案,您可以修改它。如果未安装,请安装 DSM 文件。要安装,请在工具菜单上单击自定义、 单击加载项和宏文件选项卡、 浏览以选择 DSM 文件中,并单击关闭从生成菜单中选择生成MyProject.exe。生成完成后,打开 VersionNo.h 文件。它将包含以下语句:#define FILEVER 1,0,0,2 #define PRODUCTVER 1,0,0,2 #define STRFILEVER "1, 0, 0, 2\0" #define STRPRODUCTVER "1, 0, 0, 2\0" 如果您生成代码再次中的此版本信息包含在可执行文件和版本信息就会增加。

问题一:管理文件的编号怎么编写?? (企业字母缩写简称)―(文件类型)―(文件版次)―(文件编号)

如: LX-WI-A0-003 联想公司--作业指导文件--第一版--第三份文件

再如 LX-QR-A1-009 联想公司--表格类文件--第一次修订版--第9份文件

以上为例子,可以改变缩写 只要你明白字母的含义就好

问题二:在WORD文档里如何添加编号 首先要在“格式---项目符号和编号”中选择一种多级符号。

输入的为“1”,回车后为“2”,这时如果想要“1.1”,按一下Tab键即可;

再回车时显示的是“1.1.1”,如果这时想要“2”,按Shift+Tab即可。

问题三:如何将文件和文件夹按自己的编号排序 把文件夹名字改下就可以了撒!!!!!!

问题四:怎么批量给文件编号 10分 xp自代批量给文件编号

使用方法

1 选种所有乱码的.jpg文件

2 右键单击其中一个

3 在右键菜单中选中重命名

4 选一个名字如画图

好了 变成 画图01.jpg 画图02.jpg

问题五:怎样把文件夹里的好多照片用快速的方法迅速编号? 如果是XP系统(其它系统我没有用过),不需要另外的软件。 1,先将相片(其它文件也是一样)用鼠标拖曳,按照你想要的顺序排好序 2,将要起名的照片“全部选中”。然后,右键点第一个文件(注意!此刻的文件全部是在选中的状态)重命名输入你想起的名字,如“ABC”按回车键,就全部ok! 3,起好的名是这样的:ABC,ABC (1),ABC (2),ABC (3),ABC (1000)

问题六:品质部文件怎样编号的? 查看贵司的文件与资料管制程序,就可以知道的.下面是常用的

1.文件标识

文件的标识一般有以下5部分组成:

1)公司标识,只在文件左上贴公司Logo ---

2)文件名及编号,对应使用,应是唯一性,如“质量文件编制、标识和印章管理导则 HT/QA-MR-0003”。

3)版本标识,由“英文字母”+“数字”组成,用于确认文件的修改状态,如“A/3”。

4)生效日期,应与文件“编写日期”和“修改日期”区分。

5)页码,用于识别多页文件的完整性,如“第1页,共3页”。

2.文件体系

文件体系一般分为四层面:

1)公司质量手册(QM包含公司质量方针和质量目标);

2)公共程序文件(QP);

3)部门管理工作手册(不包含技术类文件);

4)记录表单

3.文件编号规则

1)质量手册 HT/QM

2)公共程序文件 HT/QP-XX

3)其他文件HT/XXX-XX-XXXX

文件序号 (四位)

文件类别 (二位)

部门代号 (二或三位)

其他文件如:部门管理手册,设计文件,工艺文件,公司标准,工作表单等等;

4.部门代号规定

文控中心 --- DCC 采购部--- PUR 生产部 --- PRO

研发部 ---R&D 仓储部--- MW 品管部 --- QA

业务部 ---S&M 财务部--- F&憨 行政人事部--A&H

物控部---PMC 工程部 ---ENG

5.文件类别

管理职责类-- MR 表单类-- FR 技术/标准/作业指导类―TS/IS/WI

特注: TS C技术图纸; ISC指规格/标准;WI C作业指导书

6.文件版本升级规则

由A/0为第一版,修改后顺次为A/1,A/2,A/3,A/4,后为B/0 ……(即每改过4次后,英文字母有更改)

7.管理职责类文件样式

流程性内容描述建议用如下图表进行:

流 程职 责工作要求相关文件/记录

8.其他类型文件格式见相关质量记录管理规定

9.文件的编、审、批识别

每份文件的编制、审核、批准统一放在该文件的最后一页。

问题七:怎样选定word文件中的编号 1、选定所有已编号的对象(注意,不是指编号本身);2、点击“格式”-“项目符号和编号”;

3、在d出的对话框中,编号的格式、样式、字体字号随你设置了。

问题八:ISO9001文件编号怎么编,有特殊意义吗 需要依情况而定.

一般公司这样编号:

一层文件:质量手册 公司英文缩写+QM+序列号 /版本号

二层文件:程序文件 公司英文缩写+QP+序列号 /版本号

三层文件:作业指导书 公司英文缩写+WI+部门编号+序列号 /版本号

四层文件:记录表单 公司英文缩写+QR+部门编号+序列号 /版本号

希望能帮到你!

问题九:如何更改word文档的编号设置 这个说起来很麻烦的,要不你给我远程,我给你演示。

第一步:(文字我随便写的,你按照步骤就可以了)

首先选择你要更改的内容,然后右键--编号--定义新编号格式 点击 出现下图

编号样式-选择1.2.3...这个--编号格式改成3.xx(切记小数点后为两位数)点击确定

到现在还没完成,请按第二步

第二步

还是选中你编辑的内容,--编号--设置编号值 点击 出现下图

如图设置,点击确定就OK了,

有什么不懂的在问。qq 1102118789

问题十:文件号怎么打 你说的应是发文字号吧:

发文字号由发文机关代字、年份和序号组成。发文机关标识下空2行,用3号仿宋体字,居中排布;年份、序号用 *** 数码标识;年份应标全称,用六角括号“〔 )”括入;序号不编虚位(即1不编为O01),不加“第”字。

例如:国发福2009〕43号,国务院2009年43号文件。

发文字号之下4mm处印一条与版心等宽的红色反线。

发文字号由发文机关代字、年份和发文序号组成。机关代字一般由两个层次组成。第一个层次是发文机关代字,第二个层次是发文机关主办文件的部门的代字。如铁道部文件的机关代字有“铁办”、“铁财”等,“铁”代铁道部,“办”、“财”代主办这份铁道部文件的铁道部的办公部门、财务部门。读懂机关代字很重要,特别是知道了文件的主办部门是谁,可以比较准确地对文件进行分办、查询和保存归档。有的机关代字还包合其他的层次,如国务院发文的机关代字有“国发”、 “国函”,“国”代国务院,而“发”和“函”则代“国务院文件”和“国务院函”这两种发文形式。有的文件机关代字有七八个、十几个字之多,可能各有所代的层次,但尽量以简化为好。

年份要用全称,不应简化,如“87”、“93”等均属标识不正确。年份应用六角括号“〔 〕”括起。注意六角括号不是数学公式的中括号,因为当引用公文时,标题后面的发文字号要用圆括号“( )”括起,如果年份用中括号括起,就违反了低级符号中不得包合高级符号的原则。 因此称之为“六角括号”是基于与数学的中括号相区别。另外,二者形状也略有不同。有的文件把年份用圆括号括起,今后也要按本标准的规定使用六角括号。

序号是发文的流水号。一般都是按文件的形式统一编,即是哪个部门主办的,只要是同一发文形式,就要统一按顺序编号。有的机关按主办部门或按文件内容划分编序号,是一种较繁琐的办法。本标准规定序号不编虚位,不加“第” (有的单位加“字”)等虚字,主要是讲究实用,尽量减少公文的字数。

发文字号的位置,本标准规定在发文机关标识下空2行,规定在发文字号之下4mm处印一条与版心同宽的红色反线,这样就明确了发文机关标识与红色反线之间的距离是3行位置,发文字号应标在第3行,并且不要紧贴红色反线,空出约4mm的距离(实际掌握只要不贴红色反线即可)。发文字号应居中。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11852625.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存