Thema: F9 misslingt

Einzelnen Beitrag anzeigen

Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.041 Beiträge
 
Delphi XE2 Professional
 
#5

AW: F9 misslingt

  Alt 4. Jul 2021, 00:08
Ich bin nicht so sehr vertraut mit all diesen {$If...}, habe aber mal versucht mich da durchzubeißen.

Wenn keines der {SIF..} zutrifft, dann steht da m.E.nur noch
Delphi-Quellcode:
begin
   result :=
end;
und das führt dann zu dem Fehler.
Ich habe mal folgende Zeilen hinzugefügt

Hinter {$ELSEIF defined(VER330)}'Delphi 10.3 Carnival' {$ELSE} 'Unbekannte Version' .
vor {$ENDIF CONDITIONALEXPRESSIONS} {$ELSE} 'Keine CONDITIONALEXPRESSIONS' .

Das sieht dann so aus (und funktioniert bei mir)
Den Typ des Results von GetDelphiCompilerVersion habe ich auf String geändert, weil mein Delphi RawUTF8 nicht mag.

Delphi-Quellcode:
                      function GetDelphiCompilerVersion:String;
                      begin
                        result :=
{$IFDEF FPC}
                          'Free Pascal'
   {$IFDEF VER2_6_4} + ' 2.6.4'{$ENDIF}
   {$IFDEF VER3_0_0} + ' 3.0.0'{$ENDIF}
   {$IFDEF VER3_0_1} + ' 3.0.1'{$ENDIF}
   {$IFDEF VER3_0_2} + ' 3.0.2'{$ENDIF}
   {$IFDEF VER3_1_1} + ' 3.1.1'{$ENDIF}
   {$IFDEF FPC_HAS_MANAGEMENT_OPERATORS} + ' MOP'{$ENDIF}

{$ELSE}

   {$IFDEF VER130} 'Delphi 5'{$ENDIF}
   {$IFDEF CONDITIONALEXPRESSIONS}  // Delphi 6 or newer
      {$IF     defined(KYLIX3)}'Kylix 3'
      {$ELSEIF defined(VER140)}'Delphi 6'
      {$ELSEIF defined(VER330)}'Delphi 10.3 Carnival'

      {$ELSE} 'Unbekannte Version'  // Hinzugefügt

      {$IFEND}

   {$ELSE} 'Keine CONDITIONALEXPRESSIONS'  // Hinzugefügt

   {$ENDIF CONDITIONALEXPRESSIONS}


{$ENDIF}

{$IFDEF CPU64}
                          + ' 64 bit'
{$ENDIF}
                      end;
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat