Bonjour,
Qui peut m'indiquer pourquoi cette écriture : (pB + 1)^ := 0; donne une erreur de compilation ?
function THidRlyForm.GetButtonStatus: Byte;
var
Btns: TRLButtons;
Dev: TAntHidDevice;
pB: pByte;
Status: Boolean;
Sb, i: Byte;
begin
if lbBoards.Count > 0 then
begin
Dev := TAntHidDevice(lbBoards.Items.Objects[lbBoards.ItemIndex]);
try
pB := AllocMem(10);
pB^ := 0;
(pB + 1)^ := 0; Erreur ?????????????????????????????????????????????????
(pB + 2)^ := 0;
Status := Dev.GetFeature(pB^, 9);
if Status then
begin
Sb := (pB + 8)^;
InitButtons(Btns);
for i := 0 to 7 do
begin
Btns.Buttons[(i * 2) ].Down := Boolean(Sb and 1);
Btns.Buttons[(i * 2) + 1].Down := not Boolean(Sb and 1);
Sb := Sb shr 1;
end;
end;
finally
FreeMem(pB);
end;
end;
end;
A voir également:
Pourquoi cette écriture : (pB + 1)^ := 0; crache une erreur ?