Einzelnen Beitrag anzeigen

Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Nicht abgeschlossene bedingte Direktive

  Alt 18. Jan 2013, 13:59
Delphi-Version: 7
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
  Mit Zitat antworten Zitat