1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Delphi/kopieren

Discussion in 'Programmieren' started by das.Kruemel, Jan 13, 2007.

Thread Status:
Not open for further replies.
  1. das.Kruemel

    das.Kruemel Halbes Megabyte

    Moin!
    Also ich lerne gerade Delphi und möchte ein kleines Program schreib wo ich als erstes eine Datei auswählen muss die kopiert werden soll und dann den Zielort.
    Erste Anfänge:
    Der passende Kopierbefehl denke ich ist CopyFileEx(....
    Dann müsste ich doch dahineinschreiben
    CopyFileEx(TForm1.Edit1 , TForm1.Edit2);

    kruemel
     
  2. Hascheff

    Hascheff Moderator

    "TForm1." kann evtl. weggelassen werden, ".Text" muss angehängt werden.
    Sicher hat dir der Compiler das inzwischen auch schon gesagt.
     
  3. das.Kruemel

    das.Kruemel Halbes Megabyte

    Also grade schauts so aus:
    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      CopyFileEx('TForm1.Edit1.Text','TForm1.Edit2.Text');
    end;
    Compilerlog:
    Code:
    [Fehler] Kopierhilfe.pas(39): Nicht genügend wirkliche Parameter
    [Fataler Fehler] Kopierer.dpr(5): Verwendete Unit 'Kopierhilfe.pas' kann nicht compiliert werden
    Der Fehler soll hier sein:
    Code:
    CopyFileEx('TForm1.Edit1.Text','TForm1.Edit2.Text')[B];[/B]

    hoffe ihr könnt mir helfen.
    kruemel
     
  4. tiu-hathor

    tiu-hathor Kbyte

  5. das.Kruemel

    das.Kruemel Halbes Megabyte

    Wo im Quelltext muss denn die Shellfunktion stehen?
    Wenn ich sie vor die Funktion des Buttons setze dann sagt der Compiler mir, dass allemöglichen Befehle undefiniert sind.
     
  6. tiu-hathor

    tiu-hathor Kbyte

    [delphi]

    unit Unit1;

    interface

    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, ShellApi, StdCtrls;

    type
    TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    private
    { Private declarations }
    public
    { Public declarations }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.dfm}


    procedure ShellFileOperation(fromFile: string; toFile: string; Flags: Integer);
    var
    shellinfo: TSHFileOpStructA;
    begin
    with shellinfo do
    begin
    wnd := Application.Handle;
    wFunc := Flags;
    pFrom := PChar(fromFile);
    pTo := PChar(toFile);
    end;
    SHFileOperation(shellinfo);
    end;


    procedure TForm1.Button1Click(Sender: TObject);
    begin
    if fileexists('c:\test.txt') then // File anpassen
    ShellFileOperation('c:\test.txt', 'f:\test.txt', FO_COPY)
    // To Move a file: FO_MOVE
    else
    Showmessage('FILE ERROR');
    end;

    end.

    [/delphi]
     
  7. das.Kruemel

    das.Kruemel Halbes Megabyte

    Ich weiß nich was ich falsch mache,aber wenn ich das so in meinen Quelltext schreibe,bekomme ich lauter Fehler. Allemöglichen Befehle sind undefiniert...
     
  8. tiu-hathor

    tiu-hathor Kbyte

    Welche Delphi-Version hast Du?
     
  9. das.Kruemel

    das.Kruemel Halbes Megabyte

    Ich benutze Delphi 7.
     
Thread Status:
Not open for further replies.

Share This Page