如何获取包含在 Inno Setup 安装程序 exe 文件中的文件版本(exe 和 dll)?
How to get versions of files (exe's and dll's) which are included to Inno Setup installer exe file?
如题,有可能吗?而且,如果参数(例如传递给 exe 文件的参数)设置为 true,我想在安装程序的一页上显示它们。
我知道如何显示一些页面:
if dev then
PageWersjePlikow :=
CreateOutputMsgMemoPage(
1, 'Wersje plików zawarte w instalatorze',
'Lista plików niewidoczna dla klienta',
'Pliki:', 'TU WPISAĆ WERSJE PLIKÓW');
我有一些想法,但每个想法都是基于编译 exe 安装程序时构建的 .txt 文件,然后从中读取...
使用GetVersionNumbers
or GetVersionNumbersString
支持函数。
GetVersionNumbersString
returns 格式的版本 Major.Minor.Rev.Build
.
如果您需要不同的格式,您需要使用 GetVersionNumbers
并按照您需要的方式格式化版本组件(如 Major.Minor.Rev
):
function MyGetVersionNumbersString(
const Filename: String; var Version: String): Boolean;
var
MS, LS: Cardinal;
Major, Minor, Rev, Build: Cardinal;
begin
Result := GetVersionNumbers(Filename, MS, LS);
if Result then
begin
Major := MS shr 16;
Minor := MS and $FFFF;
Rev := LS shr 16;
Build := LS and $FFFF;
Version := Format('%d.%d.%d', [Major, Minor, Rev]);
end
end;
谢谢!我找到了检查 cmd 参数的解决方案:
function GetParam: Boolean;
var
param: string;
i: integer;
begin
Result := False;
for i:= 0 to ParamCount do
begin
param := ParamStr(i);
if (param = '-p') then
begin
Result := True;
break;
end;
end;
end;
使用我的功能,我可以 运行 我的安装程序使用“-p”参数,它会显示我的页面,其中包含我想要的信息:-)
如题,有可能吗?而且,如果参数(例如传递给 exe 文件的参数)设置为 true,我想在安装程序的一页上显示它们。
我知道如何显示一些页面:
if dev then
PageWersjePlikow :=
CreateOutputMsgMemoPage(
1, 'Wersje plików zawarte w instalatorze',
'Lista plików niewidoczna dla klienta',
'Pliki:', 'TU WPISAĆ WERSJE PLIKÓW');
我有一些想法,但每个想法都是基于编译 exe 安装程序时构建的 .txt 文件,然后从中读取...
使用GetVersionNumbers
or GetVersionNumbersString
支持函数。
GetVersionNumbersString
returns 格式的版本 Major.Minor.Rev.Build
.
如果您需要不同的格式,您需要使用 GetVersionNumbers
并按照您需要的方式格式化版本组件(如 Major.Minor.Rev
):
function MyGetVersionNumbersString(
const Filename: String; var Version: String): Boolean;
var
MS, LS: Cardinal;
Major, Minor, Rev, Build: Cardinal;
begin
Result := GetVersionNumbers(Filename, MS, LS);
if Result then
begin
Major := MS shr 16;
Minor := MS and $FFFF;
Rev := LS shr 16;
Build := LS and $FFFF;
Version := Format('%d.%d.%d', [Major, Minor, Rev]);
end
end;
谢谢!我找到了检查 cmd 参数的解决方案:
function GetParam: Boolean;
var
param: string;
i: integer;
begin
Result := False;
for i:= 0 to ParamCount do
begin
param := ParamStr(i);
if (param = '-p') then
begin
Result := True;
break;
end;
end;
end;
使用我的功能,我可以 运行 我的安装程序使用“-p”参数,它会显示我的页面,其中包含我想要的信息:-)