获取程序文件自身版本

procedure TFormLogin.FormCreate(Sender: TObject);
var
  MyVersion,: string;
  Block: ^VS_FIXEDFILEINFO;
  PDatA: pointer;
  Dsize, Dlen: Dword;
begin
  // 版本检查开关
  MYDEBUG := DebugHook = 1;

DLen := GetFileVersioninfoSize(Pchar(ParamStr(0)), Dsize);
  GetMem(Pdata, Dlen);
  try
    if GetFileVersionInfo(pchar(ParamStr(0)), Dsize, Dlen, Pdata) then begin
      Block := nil;
      VerQueryValue(pdata,‘\‘, pointer(Block), Dsize);
      if Block <> nil then begin
        MyVersion := Format(‘%d.%d.%d.%d‘,
         [Block^.dwFileVersionMS shr 16,Block^.dwFileVersionMS and $0000ffff,
          Block^.dwFileVersionLS shr 16,Block^.dwFileVersionLS and $0000ffff]);
      end;
    end;
  finally
    freemem(pdata, DLEN);
  end;

lblAbout.Caption := ‘V ‘ + MyVersion;
end;

时间: 2024-10-09 15:06:14

获取程序文件自身版本的相关文章

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

代码如下 复制代码 using System.Reflection;using System.Runtime.CompilerServices; //// 有关程序集的常规信息是通过下列// 属性集控制的.更改这些属性值可修改与程序集// 关联的信息.//[assembly: AssemblyTitle("")][assembly: AssemblyDescription("")][assembly: AssemblyConfiguration("&quo

C#获取程序文件相关信息的方法

本文实例讲述了C#获取程序文件相关信息的方法,分享给大家供大家参考. 具体实现方法如下: using System.Reflection; using System.Runtime.CompilerServices; // // 有关程序集的常规信息是通过下列 // 属性集控制的.更改这些属性值可修改与程序集 // 关联的信息. // [assembly: AssemblyTitle("")] [assembly: AssemblyDescription("")]

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;

Atitit,通过pid获取进程文件路径&#160;java&#160;php&#160;&#160;c#.net版本大总结

Atitit,通过pid获取进程文件路径 java php  c#.net版本大总结 1. 通过PID获取进程路径的几种方法2 1.1. GetModuleFileNameEx 想获得进程可执行文件的路径最常用的方法是通过GetModuleFileNameEx函数获得可执行文件的模块路径这个函数从Windows NT 4.0开始到现在的Vista系统都能使用,向后兼容性比较好.2 1.2. 第二种方法是GetProcessImageFileName函数,这个函数在Windows XP及其以后的系

[Windows]_[MacOSX]_[获取程序的执行文件所在路径(目录)]

场景: 1. 有时候有些辅助程序文件需要放在主程序文件同样的位置,便于管理和调用,这时候就需要通过主程序的路径来获取辅助程序所在位置. 2. 或者通过执行文件地址获取程序目录的安装地址. 方案: 1. 这里列出来省的大家去费神去找了. Windows实现: Unicode2Utf8实现搜博客里有- #include <Windows.h> #include <shlwapi.h> std::string GetExeDir() { static wchar_t szbuf[MAX_

【转】VC获取当前程序文件的路径,文件名以及路径+文件名

1.方法1 TCHAR pBuf[MAX_PATH]; //存放路径的变量 GetCurrentDirectory(MAX_PATH, pBuf); //获取程序的当前目录 _tcscat_s(pBuf, _T("\\")); _tcscat_s(pBuf, AfxGetApp()->m_pszExeName); _tcscat_s(pBuf, _T(".exe")); //获取程序的全文件名 2.方法2 //函数返回应用程序所在的路径 CString Ret

[Xcode10 实际操作]七、文件与数据-(1)获取程序沙箱结构中常用的几个目录

本文将演示如何获取程序沙箱结构中,常见的几个目录. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically fro

获取当前程序文件的路径方法

TCHAR path[MAX_PATH]; //存放路径的变量 ZeroMemory(path, 255); GetCurrentDirectory(MAX_PATH, path); //获取程序的当前目录

Android 学习笔记 4 安卓程序结构及重要的程序文件

在创建一个Android程序时,ADT会自动创建一些目录和文件.这些目录和文件有固定的作用.我们的项目一般是在这些文件中进行修改和添加.因此,了解这些文件和目录,对Android开发有着非常重要的作用. 这些目录和文件有其固定的作用,有的允许修改,有的不能修改. 5个较为重要的文件夹src.gen.assets.bin和res. src目录是源代码目录,所有允许用户修改的java文件和添加的java文件都保存在这个目录中 . 在这里,HelloAndroid工程建立初期,ADT根据工程向导中的“