Einzelnen Beitrag anzeigen

Rollo62

Registriert seit: 15. Mär 2007
4.116 Beiträge
 
Delphi 12 Athens
 
#10

AW: faArchive, faSysFile is specific to a platform

  Alt 19. Feb 2016, 15:19
Das Problem ist doch das

Delphi-Quellcode:
  , faSysFile // on POSIX system files are not regular files and not directories
{$IF    DEFINED(MSWINDOWS)}
  , faVolumeID // not used in Win32
{$ENDIF DEFINED(MSWINDOWS)}
es etwas unter Windows geben kann was es unter Posix gar nicht gibt und umgekehrt, und was sich womöglich in 3 Jahren auch mal wieder ändern kann.
Oder das Posix sich ander benimmt als Windows oder Android.

Weil mir zumindest nicht klar ist was wo verfügbar ist finde ich die Lösung alle Warnings abzuschalten gar nicht schlecht.
Dann kracht es zumindest wenn sich sonstwas ändert.

Wenn ich es aber wie obern mit IFDEF auskommentiere habe ich keine Chance einen echten Kompilererror zu bekommen
falls sich da mal was ändert.
Ich weiss die Wahrscheinlichkeit ist eher gering das sich was ändert, aber gerade deswegen
(da hatte nieeeeeemand dran gedacht das es jetzt eine VolumeID auch unter Windows gibt,
oder das wenn man fsSysFile oder SymLink unter Linux (kommt bald) benutzt kracht der ganze Rechner zusammen ...).

Nur bräuchte ich diese Hinweise das es eben irgendwie unsauber ist nicht ständig auf dem Schirm,
deswegen wollte ich das ja beim Aufruf per IFDEF ausklammern.

Vielleicht ist es auch einfach besser wenn Emba "platform" ganz wegzulassen würde, und es einfach nur die
richtigen, möglichen Zustände für die jeweilige Platform angeben würde.
Dann wüsste man auch gleich woran es liegt wenn was nicht geht.

Egal wie man es macht, ich könnte mir immer eine Situation vorstellen wie es in die Hose geht ...

Rollo
  Mit Zitat antworten Zitat