Einzelnen Beitrag anzeigen

Flare

Registriert seit: 26. Jan 2006
Ort: Leipzig
529 Beiträge
 
Delphi 7 Professional
 
#1

Drag&Drop von Dateien aus Explorer

  Alt 29. Jan 2007, 19:00
Hallo liebe DP'ler!

Ich stehe gerade vor einem seltsamen Problem.

Ich habe folgenden Code (gekürzt):
Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    files: TListBox;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    procedure WMDROPFILES(var Msg: TMessage); message WM_DROPFILES;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMDROPFILES(var Msg: TMessage);
var i, anzahl, size: integer;
  Dateiname: PChar;
begin
  inherited;
  Dateiname := '';
  anzahl := DragQueryFile(Msg.WParam, $FFFFFFFF, Dateiname, 255);
  for i := 0 to (anzahl - 1) do
  begin
    size := DragQueryFile(Msg.WParam, i , nil, 0) + 1;
    Dateiname:= StrAlloc(size);
    DragQueryFile(Msg.WParam, i, Dateiname, size);
    files.Items.Add(Dateiname);
    StrDispose(Dateiname);
  end;
  DragFinish(Msg.WParam);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  DragAcceptFiles(Form1.Handle, true);
end;

end.
Dieser Code sollte eigentlich alle Dateien mit ihrem Dateinamen in meine ListBox (files) eintragen, macht er aber nicht. Er ruft nicht mal WMDROPFILES auf.

Das seltsame daran: Ich bin mir sicher, dass ich exakt diesen Code schon mal in einem anderen Programm zum laufen bekommen habe (habe es halt jetzt nurdort rauskopiert)

Ich hoffe ihr könnt mir helfen.


Flare
Willy Scheibel
  Mit Zitat antworten Zitat