如何通过inno-setup读取VersionInfoVersion,以便与现有版本号进行对比?

2026-04-10 03:111阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计325个文字,预计阅读时间需要2分钟。

如何通过inno-setup读取VersionInfoVersion,以便与现有版本号进行对比?

在我安装程序时,我必须检查安装的版本是否低于计算机上已安装的应用程序版本。如果是这样,我必须关闭安装程序而不得安装。因此,我有以下代码:

if (GetVersionNumbersString(ExpandC)) { }

在我的安装程序中,我必须检查安装的版本是否低于计算机上已安装的应用程序的版本.

如果是这样,我必须关闭安装程序而不允许安装.

所以,我有这个代码:

if GetVersionNumbersString(ExpandConstant('{app}\bin\application.exe'), Version) then begin ... end;

这将返回给我,计算机上的应用程序版本号.
我的问题是:

如何通过inno-setup读取VersionInfoVersion,以便与现有版本号进行对比?

如何阅读mySetup的VersionInfoVersion中的信息?

要正确比较版本号,您需要对版本号的每个组件进行数字比较.

您可以使用ISPP的GetFileVersion()获取您在编译时安装的文本版本号,并将{#emit …}添加到PascalScript字符串变量中,或者在运行时使用PascalScript的GetVersionNumbersString()并传递ExpandConstants(‘{srcexe}’) .然后,您可以再次使用PascalScript的GetVersionNumbersString()函数来获取要替换的应用程序的文本版本.

如果在PascalScript字符串变量中同时使用这两个变量,则可以使用CompareVersion()函数进行实际比较.

标签:

本文共计325个文字,预计阅读时间需要2分钟。

如何通过inno-setup读取VersionInfoVersion,以便与现有版本号进行对比?

在我安装程序时,我必须检查安装的版本是否低于计算机上已安装的应用程序版本。如果是这样,我必须关闭安装程序而不得安装。因此,我有以下代码:

if (GetVersionNumbersString(ExpandC)) { }

在我的安装程序中,我必须检查安装的版本是否低于计算机上已安装的应用程序的版本.

如果是这样,我必须关闭安装程序而不允许安装.

所以,我有这个代码:

if GetVersionNumbersString(ExpandConstant('{app}\bin\application.exe'), Version) then begin ... end;

这将返回给我,计算机上的应用程序版本号.
我的问题是:

如何通过inno-setup读取VersionInfoVersion,以便与现有版本号进行对比?

如何阅读mySetup的VersionInfoVersion中的信息?

要正确比较版本号,您需要对版本号的每个组件进行数字比较.

您可以使用ISPP的GetFileVersion()获取您在编译时安装的文本版本号,并将{#emit …}添加到PascalScript字符串变量中,或者在运行时使用PascalScript的GetVersionNumbersString()并传递ExpandConstants(‘{srcexe}’) .然后,您可以再次使用PascalScript的GetVersionNumbersString()函数来获取要替换的应用程序的文本版本.

如果在PascalScript字符串变量中同时使用这两个变量,则可以使用CompareVersion()函数进行实际比较.

标签: