ezDicom Units

Rund um die LCL und andere Komponenten
Antworten
Tabak
Beiträge: 4
Registriert: Mo 22. Apr 2013, 22:23

ezDicom Units

Beitrag von Tabak »

Hallo zusammen!

Ich bin noch ganz neu bei euch und vorallem mit Lazarus und bedanke mich gleich mal für erue Geduld :wink:.
Ich habe ein kleines Projekt, welches unter Delphi 7 ganz gut läuft und möchte jetzt mit Lazarus weitermachen. Dabei werden die Units von http://www.cabiatl.com/mricro/ezdicom/#users verwendet.
Wenn ich jetzt kompilieren will erscheinen in der define_types.pas folgene Fehler:

define_types.pas(261,9) Error: Illegal qualifier
define_types.pas(261,9) Hint: may be pointer dereference is missing
define_types.pas(261,9) Error: Illegal expression
define_types.pas(261,9) Fatal: Syntax error, ";" expected but "identifier WORD1" found

Code: Alles auswählen

Procedure Xswap8r(var s : double);
type
  swaptype = packed record
    case byte of
      0:(Word1,Word2,Word3,Word4 : word); //word is 16 bit
      //1:(float:double);
  end;
  swaptypep = ^swaptype;
var
  inguy:swaptypep;
  outguy:swaptype;
begin
  inguy := @s; //assign address of s to inguy
  outguy.Word1 := swap(inguy^.Word4);
  outguy.Word2 := swap(inguy^.Word3);
  outguy.Word3 := swap(inguy^.Word2);
  outguy.Word4 := swap(inguy^.Word1);
  inguy.Word1 := outguy.Word1;        //Fehlermeldung
  inguy.Word2 := outguy.Word2;
  inguy.Word3 := outguy.Word3;
  inguy.Word4 := outguy.Word4;
end; 
 
Ich werd da nicht schlau draus und fürchte mich schon vor Fehlern in den anderen Units. :?
Thx schonmal im Vorraus!

Benutzeravatar
theo
Beiträge: 10904
Registriert: Mo 11. Sep 2006, 19:01

Re: ezDicom Units

Beitrag von theo »

Einfachste Variante

schreib

Code: Alles auswählen

{$mode delphi}{$H+}    
in die Unit.

Noch besser: die Syntax dem objfpc Modus anpassen.

Tabak
Beiträge: 4
Registriert: Mo 22. Apr 2013, 22:23

Re: ezDicom Units

Beitrag von Tabak »

Danke für die schnelle Hilfe!
Damit scheints zu funktionieren:

Code: Alles auswählen

{$IFDEF FPC}
  {$MODE DELPHI}
{$ENDIF}

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: ezDicom Units

Beitrag von Socke »

theo hat geschrieben:Einfachste Variante

schreib

Code: Alles auswählen

{$mode delphi}{$H+}    
in die Unit.
Seit wann wird denn automatische Zeiger-Dereferenzierung von Delphi unterstützt?! Das sollte verboten werden! :D
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Benutzeravatar
theo
Beiträge: 10904
Registriert: Mo 11. Sep 2006, 19:01

Re: ezDicom Units

Beitrag von theo »

Socke hat geschrieben: Seit wann wird denn automatische Zeiger-Dereferenzierung von Delphi unterstützt?! Das sollte verboten werden! :D
Ist ja verboten, in mode objfpc

Antworten