Kod: Tümünü seç
uses ShellAPI;
procedure TForm1.FormCreate(Sender: TObject);
begin
DragAcceptFiles(Handle, True);
end;
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
const BufferLength : DWORD = 511;
var
DroppedFilename,Ext : String;
FileIndex : DWORD;
NumDroppedFiles : DWORD;
pDroppedFilename : array [0..511] of Char;
begin
if Msg.message=WM_DROPFILES then begin
FileIndex := $FFFFFFFF;
NumDroppedFiles := DragQueryFile(Msg.WParam, FileIndex,
pDroppedFilename, BufferLength);
DroppedFilename:='';
ListBox1.Items.Clear;//
for FileIndex := 0 to (NumDroppedFiles - 1) do begin
//DroppedFileLength :=
DragQueryFile(Msg.WParam, FileIndex, pDroppedFilename, BufferLength);
//Inc(Top,DroppedFileLength);
DroppedFilename := StrPas(pDroppedFilename);
if FileExists(DroppedFilename) then try
ListBox1.Items.Add(DroppedFilename);//<--sürüklenen dosyalar
except
on E:Exception do begin
ShowMessage(Format('%s dosyası açılırken bir hata oluştu.'#13#10'%s',[DroppedFilename,E.Message]));
end;
end;
end;
DragFinish(Msg.WParam);
Handled := True;
end;
end;
