Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch (https://www.delphipraxis.net/86462-%5Bpascal-warnung%5D-unit-filectrl-ist-plattformspezifisch.html)

xZise 14. Feb 2007 14:14


[Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Die Warnung, dass FileCtrl Plattformspeziefisch ist, möchte ich ausblenden, da ich mir dessen Bewusst bin...
Gibt es irgendwie eine Möglichkeit, die nicht anzuzeigen?

PS: Was heißt das überhaupt genau? Angeblich soll das mit Linux zusammenhängen, aber ich dachte Delphi wäre eine Windowssprache?

Luckie 14. Feb 2007 14:17

Re: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Es gibt auch Kylix für Linux. Schatt die Warnmeldung mit den platformspezifischen Warnung ab. Siehe dazu in der Hilfe: [oh]{$WARN... ON / OFF}[/oh].

IngoD7 14. Feb 2007 14:19

Re: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Zitat:

Zitat von xZise
Die Warnung, dass FileCtrl Plattformspeziefisch ist, möchte ich ausblenden, da ich mir dessen Bewusst bin...
Gibt es irgendwie eine Möglichkeit, die nicht anzuzeigen?

Steht das nicht bei dir in der Hilfe?

Aus der D7-Hilfe: "Mit der Compiler-Direktive $WARN UNIT_PLATFORM ON/OFF können alle derartigen Warnungen für Units aktiviert oder deaktiviert werden."

volvox 4. Feb 2013 19:37

AW: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Zum Fehler : 'FileCtrl' ist plattformspezifisch



Ich bekomme den Fehler seit kurzen bei dem Befehl
Delphi-Quellcode:
ShowFolder(Pfad);
. Der Befehl öffnet normalerweise einen als String gespeicherten Dateipfad. Hat immer funktioniert. Jetzt auf einmal nich mehr, obwohl ich in der Nähe dieses Befehls nicht gearbeitet habe.

Könnte ich aus versehen was wichtiges bei den USES gelöscht, oder einfach ein
Delphi-Quellcode:
end;
vergessen haben. Ich verstehe es einfach nicht.

Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Clipbrd, FileCtrl, ShellApi;

Hier habe ich den Befehl mal als Kommentar gekennzeichnet, dort wo er hingehört
Delphi-Quellcode:
 if not DirectoryExists(Pfad) then begin                                                  // Erstellen erzwingen
          ForceDirectories(Pfad);
          ShowMessage('Neuer Ordner erstellt unter: '+Pfad);
          //                                 ShowFolder(Pfad);          //
          Application.Terminate;
          end
        else ShowMessage('Der Ordner >> '+Pfad+' << existiert bereits!');
    end
     
      else ShowMessage('Keine gültige Vorgangsnummer. Für die Hilfefunktion F1 drücken!');
      end

Volker Z. 4. Feb 2013 20:28

AW: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Hallo,

und herzlich Willkommen in der DP :dp:

Zitat:

Zum Fehler : 'FileCtrl' ist plattformspezifisch
Ich bekomme den Fehler seit kurzen [...]
Die Meldung ist nur ein Warnhinweis aber keine Fehlermeldung.
Code:
[Pascal Warnung] Unit4.pas(7): W1005 Unit 'FileCtrl' ist plattformspezifisch
Wenn Du nur DirectoryExists und ForceDirectories in Deiner Unit verwendest, nimm FileCtrl aus Deiner Uses-Liste und das Thema hat sich erledigt.


Der Fehler liegt wohl an einer anderen Stelle:
Delphi-Quellcode:
  if not DirectoryExists(Pfad) then begin // Erstellen erzwingen
          ForceDirectories(Pfad);
          ShowMessage('Neuer Ordner erstellt unter: '+Pfad);
          // ShowFolder(Pfad); //
          Application.Terminate;
          end <<<<<<<<<<<<<<<<<<<<< END OF IF NOT
        else ShowMessage('Der Ordner >> '+Pfad+' << existiert bereits!');

    end <<<<<<<<<<<<<<<<<<<<<<<<<<< END OF WHAT????
     
      else ShowMessage('Keine gültige Vorgangsnummer. Für die Hilfefunktion F1 drücken!');

      end <<<<<<<<<<<<<<<<<<<<<<<<< END OF WHAT????
Gruß

MuTzE.Y85 4. Feb 2013 20:30

AW: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Falls du die Unit drin lässt:

Code:
uses
  ..., {$WARN UNIT_PLATFORM OFF} FileCtrl {$WARN UNIT_PLATFORM ON};

Sir Rufo 4. Feb 2013 20:31

AW: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Installier dir das Bei Google suchenCnPack, dann sieht man wesentlich schneller durch die
Delphi-Quellcode:
begin ... end
Blöcke :)

volvox 4. Feb 2013 20:44

AW: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Danke.

Ich schau nochmal nach den "ends". Ich habe zuvor mehrere if ... then ... beginn befehle drin, die ich mit den ends wieder abschließe. Müsste eigentlich simmen, aber ich gucke nochmal.

Gibt es eine andere möglichkeit, um unter windows einen bestimmten ordner zu öffnen? Dann könnte ich
Delphi-Quellcode:
ShowFolder
notfalls ersetzen.

Den Post von MuTzE.Y85 verstehe ich ehrlich gesagt nicht. Wahrscheinlich fehlen mir da die Grundlagen. Soll ich das einfach ganz oben bei den uses anfügen?

Zitat:

Installier dir das Bei Google suchenCnPack, dann sieht man wesentlich schneller durch die begin ... end Blöcke
Top. Danke!

MuTzE.Y85 4. Feb 2013 20:50

AW: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
Richtig. Vor bzw. hinter FileCtrl.
Dann kommt keine Warnung mehr. Es wurde aber auch schon gesagt, dass du die Unit evtl nicht brauchst.
Dann kannst du sie natürlich gleich raus nehmen.

volvox 4. Feb 2013 21:01

AW: [Pascal Warnung] Unit 'FileCtrl' ist plattformspezifisch
 
EDIT:

Also der Quelltext ist in Ordnung.
Wenn ich
Delphi-Quellcode:
ShellExecute(0, 'open', PChar(Pfad), nil, nil, SW_ShowNormal);
verwende, wird der Ordner geöffnet.


Wenn ich
Delphi-Quellcode:
ShowFolder(Pfad)
an der gleichen Stelle verwende, dann kommt

Delphi-Quellcode:
  [Fehler] Unit1.pas(102): Undefinierter Bezeichner: 'ShowFolder'
  [Fataler Fehler] Project1.dpr(5): Verwendete Unit 'Unit1.pas' kann nicht compiliert werden
Ich verstehe es nicht...


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:08 Uhr.
Seite 1 von 2  1 2      

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