用原来的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如何获取程序内部自身版本号?的更多相关文章

  1. Delphi2010怎样获取程序内部自身版本?

    用原来的GetFileVersionInfo仅仅能获取Delpi7的程序版本,用在Delphi2010中就无论用了 //------ 获取文件版本 function F_GetFileVersion( ...

  2. uwsgi+django架构程序内部无法获取全局变量

    近期开发了一个djangoi程序,用django自带的python manage.py runserver 0.0.0.0:80 运行方式无任何问题,但用django+nginx+uwsg部署运行有时 ...

  3. asp.net C#获取程序文件相关信息

    代码如下 复制代码 using System.Reflection;using System.Runtime.CompilerServices; //// 有关程序集的常规信息是通过下列// 属性集控 ...

  4. 为什么获取的System.Web.HttpContext.Current值为null,HttpContext对象为null时如何获取程序(站点)的根目录

    ASP.NET提供了静态属性System.Web.HttpContext.Current,因此获取HttpContext对象就非常方便了.也正是因为这个原因,所以我们经常能见到直接访问System.W ...

  5. WPF 获取程序路径的一些方法,根据程序路径获取程序集信息

    一.WPF 获取程序路径的一些方法方式一 应用程序域 //获取基目录即当前工作目录 string str_1 = System.AppDomain.CurrentDomain.BaseDirector ...

  6. [置顶] iOS 应用程序内部国际化,不跟随系统语言

    前言:网络上关于iOS国际化的文章很多,但基本上都是基于跟随系统语言的国际化,笔者就不赘述了-0 – 今天要讲的是不跟随系统的切换语言版本方案,即程序内部的切换语言版本方案. 一.总则: 应用内部语言 ...

  7. UNIX网络编程卷1 时间获取程序server TCP 协议相关性

    本文为senlie原创.转载请保留此地址:http://blog.csdn.net/zhengsenlie 最初代码:  这是一个简单的时间获取server程序.它和时间获取程序client一道工作. ...

  8. PhotoPickerDemo【PhotoPicker0.9.8的个性化修改以及使用(内部glide版本号是3.7.0)】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 本Demo使用的是PhotoPicker 0.9.8版本,属于比较旧的版本,里面集成的glide版本号是3.7.0.本篇文章主要是留 ...

  9. C++通用WMI接口实现获取Windows操作系统内核版本号

    作为一名Windows开发者,能熟练掌握WMI技术,在开发Windows应用程序的时候往往能够事半功倍.今天来给大家分享一个使用WMI来获取Windows操作系统内核版本号的例子. 首先我们打开WMI ...

随机推荐

  1. L老师 Shader编程教程 学习

    Shader "VoidGame/FixedShader" { Properties{ //颜色 _Color("Color",Color)=(1,1,1,1) ...

  2. Mysql主从同步问题汇总

    data-1-1主机是master,data-1-2是slave Last_IO_Errno: 1236 slave查看show slave status\G; 显示Last_IO_Errno: 12 ...

  3. python3 TypeError: Unicode-objects must be encoded before hashing

    python3下,利用hash值对字符串进行md5加密时报错:TypeError: Unicode-objects must be encoded before hashing 原因是:python3 ...

  4. MySQL 绿色版安装Window 系统

    为了便捷安装现在网上提供了许多的绿色版本MySQL安装包,下载后解压即可使用,但是MySQL 下载直接运行还是有一点小问题,需要把MYSQL 注册成为系统服务: 1.下载mysql绿色版本 例如:my ...

  5. LOJ 2587 「APIO2018」铁人两项——圆方树

    题目:https://loj.ac/problem/2587 先写了 47 分暴力. 对于 n<=50 的部分, n3 枚举三个点,把图的圆方树建出来,合法条件是 c 是 s -> f 路 ...

  6. C# 泛型类和泛型方法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. 黄聪:ffmpeg参数说明(转载)

    ffmpeg.exe -i F:\闪客之家\闪客之歌.mp3 -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\11.flv ffmpeg -i F:\01.wm ...

  8. git add , git commit 添加错文件 撤销

    1. git add 添加 多余文件 这样的错误是由于, 有的时候 可能 git add . (空格+ 点) 表示当前目录所有文件,不小心就会提交其他文件 git add 如果添加了错误的文件的话 撤 ...

  9. Building the Unstructured Data Warehouse: Architecture, Analysis, and Design

    Building the Unstructured Data Warehouse: Architecture, Analysis, and Design earn essential techniqu ...

  10. C++进阶--placement new/delete

    //############################################################################ // Placement New 和 Pl ...