Boi*_*nst 3 inno-setup wix visual-c++
Visual Studio C++编译器提供命令行编译器选项,/favor:AMD64
并/favor:INTEL64
分别针对AMD64或Intel64处理器进行优化.现在,AMD64和Intel64这两个术语在大多数情况下基本上是可以互换的,但编译器可以针对这些差异进行优化.
在Microsoft Windows 7上,是否有可靠的方法在应用程序安装时检查我们是否在AMD64或INTEL64系统上安装?
我正在使用InnoSetup和WiX作为安装程序,我正在推测选择基于AMD64或INTEL64 CPU安装的版本.
编辑:回顾一些注意事项
最后,RRUZ和Andrew Cooper的答案都为解决这个问题提供了很好的可靠策略,但由于它们都不是真正坚定的未来证据,我个人认为/favor:blend
我的项目默认.
你可以使用Win32_Processor
WMi类,从inno设置你可以毫无问题地执行WMI查询.检查这个样本
var
FSWbemLocator : Variant;
FWMIService : Variant;
FWbemObject : Variant;
begin
FSWbemLocator := CreateOleObject('WBEMScripting.SWBEMLocator');
FWMIService := FSWbemLocator.ConnectServer('', 'root\CIMV2', '', '');
FWbemObject := FWMIService.Get('Win32_Processor');
if FWbemObject.Architecture=9 then //is a 64 bits processor
if FWbemObject.Family=131 then //all 64-bit AMD processors are identified by using a Family attribute value of 0x83 (131).
Run Code Online (Sandbox Code Playgroud)
在这里,您可以使用Architecture,Family,Manufacturer和tohers属性来确定处理器类型.
归档时间: |
|
查看次数: |
1110 次 |
最近记录: |