编译此代码时,我在环获得与Delphi 7中的错误上链接
procedure GetProcessorInfo;
Var
SMBios : TSMBios;
LProcessorInfo : TProcessorInformation;
LSRAMTypes : TCacheSRAMTypes;
begin
SMBios:=TSMBios.Create;
try
WriteLn('Processor Information');
if SMBios.HasProcessorInfo then
for LProcessorInfo in SMBios.ProcessorInfo do // <-- Error here
begin
...
end;
...
end;
错误信息:
[错误] Project1.dpr(52):运算符不适用于此操作数类型
还有其他方法吗?或者我该如何解决?
Delphi 7不支持for .. in
,因此您必须自己迭代TSMBios.ProcessorInfo
数组
procedure GetProcessorInfo;
Var
SMBios : TSMBios;
LProcessorInfo : TProcessorInformation;
LSRAMTypes : TCacheSRAMTypes;
LIdx : Integer; // add this
begin
SMBios:=TSMBios.Create;
try
WriteLn('Processor Information');
if SMBios.HasProcessorInfo then
// for LProcessorInfo in SMBios.ProcessorInfo do
for LIdx := Low( SMBios.ProcessorInfo ) to High( SMBios.ProcessorInfo ) do
begin
LProcessorInfo := SMBios.ProcessorInfo[LIdx];
...
end;
...
end;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句