Hallo,
folgendes Beispiel:
Delphi-Quellcode:
procedure TForm4.FormCreate(Sender: TObject);
const
Handles = 2;
var
Return : LongWord;
HandleBuffer : Array[0..1] of THandle;
begin
Return := MsgWaitForMultipleObjects (Handles, HandleBuffer, False, 2000, QS_ALLINPUT);
case Return of
INVALID_HANDLE_VALUE : begin
Sleep(0);
end;
end;
end;
Wenn ich das als 32bit compiliere ist alles gut.
Wenn ich das als 64bit compiliere, bekomme ich eine Warnung, dass der untere Konstantenausdruck verletzt wird.
INVALID_HANDLE_VALUE scheint einen unterschiedlichen Wert bei 32/64bit zu haben.
Was kann man an dieser Stelle machen?
MsgWaitForMultipleObjects liefert ja egal ob 32/64 bit immer ein DWord (LongWord) zurück!
Gruß