Mep Sites - Dicas

Mep Sites: Dicas de Delphi - Pega caminho de arquivo arrastado

Pega o path de um arquivo arrastado do explorer (como por exemplo, de uma pasta qualquer para cima da aplicação)

uses
StdCtrls, ShellApi;

private
procedure WMDropFiles(var Msg : TWMDropFiles); message WM_DROPFILES;

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

procedure TForm1.WMDropFiles(var Msg: TWMDropFiles);
var
i : Integer;
NumArqs : Integer;
NomeArq : String;
begin
SetLength(NomeArq,255);
NumArqs := DragQueryFile(Msg.Drop,$FFFFFFFF,PChar(NomeArq),255);
for i := 0 to NumArqs-1 do begin
DragQueryFile(Msg.Drop,i,PChar(NomeArq),255);
Listbox1.Items.Add(NomeArq);
end;
end;