Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   EMB DCE 12 - kann keine "external" Variablen behandeln - WTF ? (https://www.delphipraxis.net/215737-emb-dce-12-kann-keine-external-variablen-behandeln-wtf.html)

paule32.jk 29. Aug 2024 13:15

EMB DCE 12 - kann keine "external" Variablen behandeln - WTF ?
 
Hallo,
ich habe folgenden Code, der in einer Unit steht, und Fehler liefert:
Delphi-Quellcode:
{$ifdef FPC}
    {$mode delphi}{$H+}
{$endif}
unit misc;

interface
uses
    {$ifdef win64}
    Windows,
    {$endif}
    {$ifdef Unix}
    DynLibs,
    {$endif}
    SysUtils;

    {$ifdef win64}
    const DLLname = 'fpcqt.dll';
    {$endif}
    {$ifdef Unix}
    const DLLname = 'fpcqt.so';
    {$endif}
var
    isFpcCompiled: Boolean; cdecl; external DLLname;
...
als Conclusion for me: Ich kann keine "externe" Variablen ansprechen...

[dcc64 Fehler] misc.pas(34): E2029 ',' oder ':' erwartet, aber ';' gefunden
[dcc64 Fehler] misc.pas(34): E2029 ',' oder ':' erwartet, aber Bezeichner 'DLLname' gefunden

himitsu 29. Aug 2024 13:53

AW: EMB DCE 12 - kann keine "external" Variablen behandeln - WTF ?
 
Zitat:

variablen
Variablen gehen dort sowieso garnicht.

Nur Konstanten.
Und zwar ausschließlich "echte" Konstanten, denn typisierte Konstanten sind bloß schreibgeschützte Variablen mit InitialWert.

Bei Win32 müsste das doch auch knallen?

Hach, die Contidionalen bieten einem sooooo viele Möglichkeiten, wie z.B.
Delphi-Quellcode:
    {$if Defined(Win64)}
      const DLLname = 'fpcqt.dll';
    {$elseif Defined(Unix)}
      const DLLname = 'fpcqt.so';
    {$else}
      {$message Fatal 'Compiler nicht untersützt'}  // oder Hint oder Warn
    {$endif}
oder
Delphi-Quellcode:
  const DLLname =
    {$if Defined(Win64)}
      'fpcqt.dll'
    {$elseif Defined(Unix)}
      'fpcqt.so'
    {$else}
      {$message Fatal 'Compiler nicht untersützt'}
    {$endif};

Sinspin 29. Aug 2024 15:59

AW: EMB DCE 12 - kann keine "external" Variablen behandeln - WTF ?
 
Paule! WTF!

Wenn du auf Teufel komm raus versuchst alles anders zu machen als es richtig ist, kann ich dir nur raten : RTFM. Und mach es dann richtig!

himitsu 29. Aug 2024 16:29

AW: EMB DCE 12 - kann keine "external" Variablen behandeln - WTF ?
 
Maaaa, das ist mir grade aufgefallen, dass ist ja kein Funktion-Export davor, sondern eine Variable?


Klar, Packages exportieren zwar auch Variablen/Typen/..., aber selbst macht man sowas ja eher weniger. :gruebel:

paule32.jk 29. Aug 2024 17:29

AW: EMB DCE 12 - kann keine "external" Variablen behandeln - WTF ?
 
@Sinspin
WTF = Was Tu'en Fahranfänger :-)

Mit Funktionen geht das natürlich.
Ich werkel zu viel mit zu viel anderen Kram rum...
Da verguckt man sich manchmal...


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz