通过程序如何实现,选择某个文件,将其拷贝到剪贴板中?
解决方案 »
- 请问字符串SHL左移后怎么还原?
- 【散分】大家用Delphi几年了,讲一下自己最拿手的技术!
- 怎样将整个窗体包括标题作为一个位图复制到剪贴板
- 23:10把辞职信发了出去,就等明天公司回复了,散分~
- 当serversocket1.Socket.Connections[]数组中一个连接断开时,这个数组会做何调整?
- 急,speedbutton的图象运行中改变不了
- 我用sakmail做邮件发送程序的时候遇到的问题,在线等待
- **我想让图像按比例缩小放大,如5:1,1:2之类的,怎样才能使图像总处在panel的中间?
- 50分,帮帮忙。一个很简单的问题
- 关于创建combobox的一个重要技术问题,不是高手别看!
- Grid中(dev),如何实现Query中的SQL语句自动生成列?急!!
- 超级难题,关于word和excel,拷贝和粘贴,高手来看看啊
var DataHandle: THandle;
DataPointer: PDROPFILES;
begin
DataHandle := GlobalAlloc(GMEM_DDESHARE or GMEM_MOVEABLE,SizeOf(DROPFILES)+2+Length(FileName));
DataPointer := PDROPFILES(GlobalLock(DataHandle));
FillChar(DataPointer^,SizeOf(DROPFILES)+2+Length(FileName),0); DataPointer.pFiles:=SizeOf(DROPFILES);
DataPointer.pt:=Point(0,0);
DataPointer.fNC:=False;
DataPointer.fWide:=False;
Move(FileName[1],Pointer(Integer(DataPointer)+SizeOf(DROPFILES))^,Length(FileName));
GlobalUnlock(DataHandle);
OpenClipboard(MainForm.Handle);
EmptyClipboard;
SetClipboardData(CF_HDROP, DataHandle);
CloseClipboard;
end;其中FileName是完整路径名。如有多个文件,可用#0隔开,例如:
FileName:='c:\a.txt'+#0+'c:\b.txt'+#0;