Mega Code Archive

 
Categories / Delphi / Files
 

Retrieve the filenames in the clipboard

Title: retrieve the filenames in the clipboard? { "If I use the windows Explorer to copy a file, how can I use a paste function in my app? This code retrieves the filenames in the clipboard. Now you may want to display a file in a memo or do something else with it. "Wenn ich im Windows Explorer eine Datei kopiere, wie kann ich dann eine Einf ge Funktion implementieren ? Der folgende Code listet alle Dateinamen in der Zwischenablage auf. Dann kann man eine Datei z.B in ein Memo laden oder etwas anderes damit anstellen. } uses clipbrd, shellapi; {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var f: THandle; buffer: array [0..MAX_PATH] of Char; i, numFiles: Integer; begin if not Clipboard.HasFormat(CF_HDROP) then Exit; Clipboard.Open; try f := Clipboard.GetAsHandle(CF_HDROP); if f 0 then begin numFiles := DragQueryFile(f, $FFFFFFFF, nil, 0); memo1.Clear; for i := 0 to numfiles - 1 do begin buffer[0] := #0; DragQueryFile(f, i, buffer, SizeOf(buffer)); memo1.Lines.Add(buffer); end; end; finally Clipboard.Close; end; end;