Delphi2010怎样获取程序内部自身版本?
用原来的GetFileVersionInfo仅仅能获取Delpi7的程序版本,用在Delphi2010中就无论用了
//------ 获取文件版本
function F_GetFileVersion(FN: string): string;
var
Temp, InfoSize: Cardinal;
FileData: Pointer;
FileInfo: PVSFixedFileInfo;
begin
Result := '';
if not FileExists(FN) then Exit;
InfoSize := GetFileVersionInfoSize(PChar(FN), Temp);
if InfoSize = 0 then Exit; //没有版本
FileData := GetMemory(InfoSize);
try
if not GetFileVersionInfo(PChar(FN), 0, InfoSize, FileData) then Exit;
if not VerQueryValue(FileData, '\', Pointer(FileInfo), Temp) then Exit;
Result := Format('%d.%d.%d.%d',
[FileInfo.dwFileVersionMS div $10000,
FileInfo.dwFileVersionMS mod $10000,
FileInfo.dwFileVersionLS div $10000,
FileInfo.dwFileVersionLS mod $10000]);
finally
FreeMemory(FileData)
end;
解决方法是用第三方控件Rave。里面有个RzVersionInofo,放上去编译的时候勾选Including version information in project,就能够获取版本了,获取方法:Showmessage(RzVersionInofo1.FileVersion);
Delphi2010怎样获取程序内部自身版本?的更多相关文章
- Delphi2010如何获取程序内部自身版本号?
用原来的GetFileVersionInfo只能获取Delpi7的程序版本号,用在Delphi2010中就不管用了 //------ 获取文件版本号function F_GetFileVersion( ...
- C#获取指定的文件是否是内部特殊版本的代码
把内容过程经常用到的内容片段珍藏起来,下面的内容内容是关于C#获取指定的文件是否是内部特殊版本的内容,希望对各朋友有所用处. using System;using System.Diagnostics ...
- uwsgi+django架构程序内部无法获取全局变量
近期开发了一个djangoi程序,用django自带的python manage.py runserver 0.0.0.0:80 运行方式无任何问题,但用django+nginx+uwsg部署运行有时 ...
- [置顶] iOS 应用程序内部国际化,不跟随系统语言
前言:网络上关于iOS国际化的文章很多,但基本上都是基于跟随系统语言的国际化,笔者就不赘述了-0 – 今天要讲的是不跟随系统的切换语言版本方案,即程序内部的切换语言版本方案. 一.总则: 应用内部语言 ...
- js获取浏览器类型和版本信息
bro () { let broName = 'Runing' let strStart = 0 let strStop = 0 let temp = '' let userAgent = windo ...
- iOS 应用程序内部国际化,不跟随系统语言
前言:网络上关于iOS国际化的文章很多,但基本上都是基于跟随系统语言的国际化,笔者就不赘述了-0 – 今天要讲的是不跟随系统的切换语言版本方案,即程序内部的切换语言版本方案. 一.总则: 应用内部语言 ...
- asp.net C#获取程序文件相关信息
代码如下 复制代码 using System.Reflection;using System.Runtime.CompilerServices; //// 有关程序集的常规信息是通过下列// 属性集控 ...
- 为什么获取的System.Web.HttpContext.Current值为null,HttpContext对象为null时如何获取程序(站点)的根目录
ASP.NET提供了静态属性System.Web.HttpContext.Current,因此获取HttpContext对象就非常方便了.也正是因为这个原因,所以我们经常能见到直接访问System.W ...
- js获取浏览器信息及版本(兼容IE)
获取浏览器信息方法有很多种,但是要是兼容ie旧版本就有点麻烦了,因为很多方法在旧版本ie是不支持的,所以ie我做了单独处理,但是目前还有小问题,就是想显示QQ浏览器,搜狗浏览器..这样的,这样还实现不 ...
随机推荐
- [leetcode]Palindrome Partitioning II @ Python
原题地址:https://oj.leetcode.com/problems/palindrome-partitioning-ii/ 题意: Given a string s, partition s ...
- 漂亮的CSS3提交意见输入框样式
做了个输入框样式,如图: CSS代码如下: <喎�"http://www.2cto.com/kf/ware/vc/" target="_blank" cl ...
- Ios开发之协议protocol
Protocol是ios开发中的一个难点也是一个重点,要想使用好,或者理解好它,可能需要时间的累积.今天我们就通过一个例子来简单的看一下,怎么样使用protocol. 我们今天用的例子就是模拟电脑插入 ...
- Spark简介及其在ubuntu下的安装使用
转:http://blog.csdn.net/pelick/article/details/9888311 Spark概述 Spark是一种与 Hadoop 相似的开源集群计算环境,在性能和迭代计算上 ...
- MySQL 常用函数之——substr()
substr()函数是用来截取数据库某一列字段中的一部分 常用的方式是: SBUSTR(str,pos); 就是从pos开始的位置,一直截取到最后. SUBSTR(str,pos,len); 这种表示 ...
- 【Python】使用torrentParser1.03对单文件torrent的分析结果
C:\Users\horn1\Desktop\python\42-torrentParser>python torrentParser.py 文件名=./5.torrent 文件结构: anno ...
- Javascript 闭包(Closures)
本文内容 闭包 闭包和引用 参考资料 闭包是 JavaScript 的重要特性,非常强大,可用于执行复杂的计算,可并不容易理解,尤其是对之前从事面向对象编程的人来说,对 JavaScript 认识和编 ...
- NVIDIA安装显卡提示你必须先安装Intel怎么办
无法安装驱动程序 计算机管理中查看当前的Intel的显卡驱动是否已经安装成功,如果显示的是标准VGA,则没有安装驱动,先要把Intel的显卡驱动装好(有时候360驱动大师这种工具并不能自动帮你装好 ...
- javascript中this的妙用
this是javascript语言的一个关键字,它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用. this总是指向对象,并且为调用函数的那个对象: //调用普通函数 function f ...
- 牛客网-《剑指offer》-跳台阶
题目:http://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4 C++ class Solution { public: in ...