【发布时间】:2018-07-04 19:49:40
【问题描述】:
在 Delphi 2007 中,我可以使用以下 ToolsAPI 调用轻松获取当前项目的版本信息:
procedure Test;
var
ProjectOptions: IOTAProjectOptions;
Project: IOTAProject;
Major: Variant;
Minor: Variant;
Release: Variant;
Build: Variant;
begin
// GxOtaGetCurrentProject is a function in GExpert's GX_OTAUtils unit that returns the current IOTAProject
Project := GxOtaGetCurrentProject;
if Assigned(Project) then begin
ProjectOptions := Project.ProjectOptions;
if Assigned(ProjectOptions) then begin
Major := ProjectOptions.Values['MajorVersion'];
Minor := ProjectOptions.Values['MinorVersion'];
Release := ProjectOptions.Values['Release'];
Build := ProjectOptions.Values['Build'];
end;
end;
end;
在 Delphi 10.2.3 中,无论实际版本号如何,这将始终返回版本 1.0.0.0。这是一个“简单”的案例:一个 VCL 应用程序。
我还尝试了返回 TStrings 指针的“Keys”值。在那里我也得到了 FileVersion 字符串,但它总是“1.0.0.0”。
我想这与对各种平台和配置的支持有关,但我找不到任何文档,说明它现在应该如何工作。我还在 ToolsAPI.pas 中搜索了“版本”和“发布”,但没有出现任何可疑的情况。
关于如何在 Delphi 10.2 中获取版本信息的任何提示?
【问题讨论】:
-
DDevExtensions 似乎可以阅读它。问安德烈亚斯·豪斯拉登?
标签: delphi delphi-10.2-tokyo toolsapi otapi