类型:转载 责任编辑:asp.net 日期:2007/05/23
热门软件下载:
如何实现在我的程序中listview 中点击复制文件,在Windows的资源管理器中,点击粘贴,就可以完成文件的拷贝。
网友回答:
把文件转化为流复制到剪贴版
Procedure CopyStreamToClipboard( fmt: Cardinal; S: TStream );
Var
hMem: THandle;
pMem: Pointer;
Begin
S.Position := 0;
hMem := GlobalAlloc( GHND or GMEM_DDESHARE, S.Size );
If hMem <> 0 Then Begin
pMem := GlobalLock( hMem );
If pMem <> Nil Then Begin
S.Read( pMem^, S.Size );
S.Position := 0;
GlobalUnlock( hMem );
Clipboard.Open;
try
Clipboard.SetAsHandle( fmt, hMem );
finally
Clipboard.Close;
end;
End { If }
Else Begin
GlobalFree( hMem );
OutOfMemoryError;
End;
End { If }
Else
OutOfMemoryError;
End; { CopyStreamToClipboard }