Einzelnen Beitrag anzeigen

venice2
(Gast)

n/a Beiträge
 
#20

AW: ASM Inline code x64

  Alt 15. Feb 2022, 11:21
Zitat:
Ich vermute vom SOP.exe (Release Win32).
Ja.
Obwohl es zwei uMain gibt.
Aber jede für sich im eigenen Root incl. der erzeugten DCU.

Zitat:
Da der inline Assembler-Quelltext nicht unter 64-Bit kompiliert, schlägt dir der erste Fehler entgegen.
Hier darf aber kein Fehler auftreten denn SOP.exe muß mit dcc32 kompiliert werden.
Da ist die IDE bzw. der Compiler anscheinend zu dumm zu erkennen das es hier um 32Bit bzw.. eine Kombination von 32/64Bit geht.

In VS(Visual Studio) kann ich mehrere Konfigurationen festlegen x86/x64 usw.. dort wird jeweils der korrekte Compiler beim Kompilieren ausgeführt.
Nur mal so nebenbei.

Zitat:
Wenn du das SOP.exe-Projekt so umbaust, dass es theoretisch unter 64-Bit kompilieren würde, dann könnte es funktionieren.
Meine Vermutung ist ganz einfach das die Reihenfolge wie die Projekte kompiliert werden nicht stimmt bei aktivierter Abhängigkeit.
Erst muß diese und dann das aufgerufenen Projekt kompiliert werden. Das scheint aber nicht so zu sein.
Wenn ich doch weiß das mein Hauptprogramm ohne die Abhängigkeit nicht funktioniert dann muß logischer weise erst diese erstellt werden damit
das Hauptprogramm überhaupt funktioniert. Aber bitte mit dem richtigen Compiler.

Es ist doch nicht der Sinn des Programmierers Fehler beim erstellen von Konfigurationen für die Kompilierung der IDE\Compiler für Delphi auszubügeln
wenn hier solche Sachen auftreten das weder eine Abhängigkeit noch das erstellen einer Projektgroup verschiedener Builds (Konfigurationen) auftreten\nicht funktionieren.

Wie ich schon sagte..
Ich kann jedes Projekt eigenständig erstellen und es Kompiliert Fehlerfrei.
Aber nicht auf den oder die aufgezeigten von der IDE bereitgestellten Möglichkeiten.
Warum stellt man diese zur Verfügung wenn sie nicht funktionieren?

Ich hatte ja schon gefragt wie ich es umbauen könnte.
Leider kam diesbezüglich noch kein Vorschlag siehe..
Delphi-Quellcode:
procedure ClearPendingExceptions;
asm
  FNCLEX
end;
Scheint ja als eigene Procedure nicht zu funktionieren.
Nur warum funktioniert dann meine Rgb2Gray Funktion wenn "asm inline" angeblich unter 64Bit nicht funktioniert.
Sehr unverständlich das ganze.

Zitat:
ganz einfacher Test:
Danke! Obwohl ich jetzt nicht erkenne was du damit jetzt aussagen willst.
Das es falsch bzw. richtig ausgeführt wird in deinem Test?

Aus meiner Sicht läuft hier definitiv etwas ganz gehörig schief!

Geändert von venice2 (15. Feb 2022 um 12:04 Uhr)
  Mit Zitat antworten Zitat