【发布时间】:2016-05-06 17:31:48
【问题描述】:
procedure GetWin32_DiskDriveInfo;
const
WbemUser ='';
WbemPassword ='';
WbemComputer ='localhost';
wbemFlagForwardOnly = $00000020;
var
FSWbemLocator : OLEVariant;
FWMIService : OLEVariant;
FWbemObjectSet: OLEVariant;
FWbemObject : Variant;
oEnum : IEnumvariant;
sValue : string;
begin
FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
FWMIService := FSWbemLocator.ConnectServer(WbemComputer, 'root\CIMV2', WbemUser, WbemPassword);
FWbemObjectSet:= FWMIService.ExecQuery('SELECT * FROM Win32_DiskDrive','WQL',wbemFlagForwardOnly);
oEnum := IUnknown(FWbemObjectSet._NewEnum) as IEnumVariant;
while oEnum.Next(1, FWbemObject, nil) = 0 do
所以我有 [dcc32 Error] Project2.dpr(29): E2033 Types of actual and form var parameters must be same。我在上面显示的代码的最后一行有它(我想它与 FWbemObject 有关)变量。 请注意,我使用的是 Delphi 10 Seattle。
【问题讨论】:
-
你明白错误的意思吗?
-
我读过docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/…,我很确定我明白了,但我似乎无法修复它。
-
来源取自stackoverflow.com/questions/8519658/…,这让我什至想知道,如果它适用于 OP,为什么它对我不起作用。
-
@ImadLekal,代码用于 fpc,请改用:wmi-delphi-code-creator。