打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
复制文件到剪切版
uses   ShlObj,   ClipBrd;

procedure   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( 'Could   not   allocate   memory. ');
    begin
        DropFiles   :=   GlobalLock(hGlobal);
        DropFiles^.pFiles   :=   SizeOf(TDropFiles);
        Move(FileList[1],   (PChar(DropFiles)   +   SizeOf(TDropFiles))^,   iLen);
        GlobalUnlock(hGlobal);
        Clipboard.SetAsHandle(CF_HDROP,   hGlobal);
    end;
end;

//   Example:
procedure   TForm1.Button1Click(Sender:   TObject);
begin
    CopyFilesToClipboard( 'C:\temp\temp.Txt '#0 'C:\temp\temp.bmp ');
end;
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
GlobalLock的前世今生4: 实现细节解析
VB与Windows资源管理器互拷文件
全局(Global)和局部(Local)内存管理
深入了解Windows句柄到底是什么
发送wm_dropfiles消息
矩阵类的模板实现(C++)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服