Hallo!
Mein D7-Compiler gibt mir grad ein bisschen Rätsel auf. Hier erstmal der Code:
Delphi-Quellcode:
function dwVMWareIsPresent: Boolean;
begin
Result := False;
{$IFDEF CPU386}
try
asm
mov eax, 564D5868h
mov dx, 5658h
mov ecx, 0000000Ah
xor ebx, ebx
in eax, dx
cmp ebx, 564D5868h
jne @@exit
mov Result, True
@@exit:
end;
except
Result := False;
end;
{$ENDIF}
end;
Beim
{$IFDEF CPU386}
wirft der Compiler die besagte Meldung als Fehler aus und hält an. Aber auch nur bei einem STRG-F9-Durchlauf. Bei einem darauf folgenden F9 compiliert er sauber durch. Wo ist da jetzt der Denkfehler? Die übliche Medizin, also erstmal alle DCUs löschen und komplett neu erzeugen lassen hilft nicht.
Grüße
Cody