Autor Beitrag
McToast
Hält's aus hier
Beiträge: 3

Win98, mu-Linux
D3 Prof
BeitragVerfasst: Mi 12.11.03 13:35 
Hallo!

Ich hoffe meine Frage ist hier richtig, denn ich bin ein absoluter Newbie und habe als mir als Software ein altes Delphi 3 Professional zugelegt.
Nun habe ich auch ein Problem - und möchte es mit Delphi lösen...
Gar nicht so einfach für den Anfang, denn mein Programm soll im Hintergrund eine Datei auswerten und in einen anderen Ordner verschieben.

Eine Sache vollkommen ohne GUI - und (grins) genau das ist mein Problem: Delphi bietet mir schnell die Möglichkeit Programme mit Knöpfen und Fenstern etc. zu erschaffen... Und nun will ich ein Tool bauen, dass das alles nicht nutzt!

Ich habe mir zu meinem Delpi-Buch (Delphi für Kids) sowohl Delphi- wie auch Pascal-Tutorials heruntergeladen, aber meistens wird für Anfänger unter Delphi die graphische Benutzerumgebung benutzt. - Bei Schulungen zu Pascal habe ich Umsetzungsprobleme, da ich ja noch Anfänger bin - und die Struktur überhaupt erstmal durchschauen muss.

Frage: Hat jemand einen Tipp für mich ? Ich suche Tipps sowohl zur Umsetzung des Problems in Delphi3 wie auch Schulungen im Netz etc. die auf meine Problemstellung eingehen...

Zu den Tutorials hier im Forum: Ich finde es toll, dass sie hier sind (!)- aber für mich sind sie bei weitem zu wenig kommentiert! - Die Kritik ist konstruktiv gemeint - denn natürlich ist unkommentierter Code besser als keiner ;-)

Gruß an Euch!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19314
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 12.11.03 15:14 
Titel: 2 Möglichkeiten:
Hallo!

Es gibt da zwei Möglichkeiten (die ich aus Faulheit :oops: einfach aus der Delphi-Fundgrube geholt habe :wink: , [url]www.delphi-fundgrube.de[/url]):

Die erste:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
function KopiereDatei(Quelldatei, Zieldatei : string): Boolean;
begin
  Result:=CopyFile(PChar(Quelldatei), PChar(Zieldatei), true);
end;


Die zweite Möglichkeit ist etwas komplizierter:

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
FUNCTION QuickCopy ( Quelle, Ziel : STRING ) : BOOLEAN;
VAR
  S, T: TFileStream;
BEGIN
  Result := TRUE;
  S := TFileStream.Create( Quelle, fmOpenRead );
  TRY
    TRY
      T := TFileStream.Create( Ziel, fmOpenWrite OR fmCreate );
    EXCEPT
      Screen.Cursor := crDefault;
      MessageDlg('Fehler beim Erzeugen der Zieldatei'+#13+Ziel, mtError, [mbOK], 0);
      Result := FALSE;
    END;
    TRY
      TRY
        T.CopyFrom( S, S.Size ) ;
        if Config.CopyDat then
          FileSetDate( T.Handle, FileGetDate( S.Handle ) )
        else
          FileSetDate( T.Handle, DateTimeToFileDate(Now) );
        { Dateizeit setzen }
      EXCEPT
        Screen.Cursor := crDefault;
        MessageDlg('Fehler beim Kopieren der Zieldatei'+#13+Ziel, mtError, [mbOK], 0);
        Result := FALSE
      END;
    FINALLY
      T.Free
    END;
  FINALLY
    S.Free
  END
END{QuickCopy}


Na ja, such dir eine Möglichkeit aus, bzw. probiere ob alles auch unter Delphi 3 funktioniert!

Viel Erfolg!
S.J.
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mi 12.11.03 16:12 
1. Erstelle eine neue Anwendung
2. Klicke im Menü "Projekt" auf "Quelltext anzeigen"
3. Änderer den Code in

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
program Project1;

uses
  Windows;

begin
 if paramcount < 2 then exit;
 CopyFile(pchar(paramstr(1)), pchar(paramstr(2)), false {bzw true wenn die Datei überschrieben werden soll});
end.
McToast Threadstarter
Hält's aus hier
Beiträge: 3

Win98, mu-Linux
D3 Prof
BeitragVerfasst: Mi 12.11.03 19:48 
:D Hallo ! Vielen Dank erstmal für die Antworten! Klasse! Ich werde jetzt erstmal testen... und mich dann vielleicht noch mal melden!

Toll,

--
Der kleine Toaster! :roll: