![]() |
Datei in Zwischenablage
Hallo zusammen,
ich möchte gern eine Datei (Test.xlsx) in die Zwischenablage kopieren und anschließend mittels Strg+V oder über das Menü rechte Maustaste/Einfügen in ein beliebiges Verzeichnis oder Mailanhang kopieren. Dazu habe ich auch schon einige Beispiele gefunden die letztendlich immer den selben Code verwenden
Code:
nach dem Ausführen der procedure wird auch etwas in die Zwischenablage kopiert, zumindest zeigt das Menü über rechte Maustaste/Einfügen den Menüpunkt Einfügen als anwendbar an aber weder durch den Menüpunkt noch durch Strg+V lässt sich die Datei irgendwo hin kopieren. Es geschieht nichts, keine Fehlermeldung, der Menüpunkt Einfügen bleibt aktiv :cry:
// Aufruf mit CopyFilesToClipboard('C:\Bootlog.Txt'#0'C:\AutoExec.Bat'); Files durch #0 trennen
procedure TForm_Schleifbrand.CopyFilesToClipboard(FileList: string); var DropFiles: PDropFiles; hGlobal: THandle; iLen: Integer; begin iLen := Length(FileList) + 2; FileList := FileList + #0#0; hGlobal := GlobalAlloc(GMEM_SHARE or GMEM_MOVEABLE or GMEM_ZEROINIT, SizeOf(TDropFiles) + iLen); if (hGlobal = 0) then raise Exception.Create('Nicht genügend Speicher vorhanden'); begin DropFiles := GlobalLock(hGlobal); DropFiles^.pFiles := SizeOf(TDropFiles); Move(FileList[1], (PAnsiChar(DropFiles) + SizeOf(TDropFiles))^, iLen); GlobalUnlock(hGlobal); Clipboard.SetAsHandle(CF_HDROP, hGlobal); end; end; Hat jemand eine Idee?? Gruß Sidi61 Nachtrag: sorry - hat sich erledigt, konnte mit diesem Beitrag ![]() von MarcoWarm das Problem lösen :-) Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz