我尝试以编程方式查找我机器上安装的 Delphi 编译器的版本。
我正在查看注册表,但没有成功。我正在使用 Windows 7-64 位专业版
您可以检查注册表。在这些键下查看:
HKLM\Software\Borland\Delphi
HKLM\Software\CodeGear\BDS
HKLM\Software\Embarcadero\BDS
在这些键中的每一个下,您都会找到带有版本号的子键。例如,Delphi 6 是:
HKLM\Software\Borland\Delphi\6.0
德尔福 2010 是:
HKLM\Software\CodeGear\BDS\7.0
德尔福 XE5 是:
HKLM\Software\Embarcadero\BDS\12.0
请注意,这并不能保证安装完全正常,请注意。
如果您使用的是 64 位计算机,请务必查看 32 位注册表视图。如果您的进程是 32 位进程,注册表重定向器将为您处理这些问题。但是在 regedit 下查看时您可能会感到困惑。在 regedit 中查看时,这些键变为
HKLM\Software\Wow6432Node\...
@RRUZ 在这里有一个很好的帖子:http: //theroadtodelphi.wordpress.com/2010/10/27/detecting-installed-delphi-versions/
我相信您可以使用任何具有安装程序的开源库。这已经以一种或另一种方式解决了。而且您可以重复使用已经经过测试和测试的解决方案,而不是将您的时间浪费在 NIH 方法上。
例如,您可以JEDI CodeLib
查看jcl\source\common\JclIDEUtils.pas
你使用这些功能的实际例子是安装程序本身:jcl\install\JediInstaller.dpr