Einzelnen Beitrag anzeigen

Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

INVALID_HANDLE_VALUE Delphi XE4 32/64bit

  Alt 26. Jun 2013, 13:40
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ß
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat