如何将一个文件送入WIN98的粘贴板?就象在资源管理器中选一个文件,再按Ctrl+C一样,这里用Delphi实现。(50分)

  • 主题发起人 主题发起人 glglgl
  • 开始时间 开始时间
G

glglgl

Unregistered / Unconfirmed
GUEST, unregistred user!
如何将一个文件送入WIN98的粘贴板?就象在资源管理器
中选一个文件,再按Ctrl+C一样,这里用Delphi实现。
 
听一下。
 
delphi ->>new items ->projects->application wizard
中就有, 直接用就好了.
 
用win98的剪贴板查看程序看一下Ctrl+C的结果,一切都很简单。
例如:对c:/Autoexec.bat按Ctrl+C键,则剪贴板查看程序的内容
为c:/Autoexec.bat。我觉得也就是把完整文件名放入系统剪贴板
中就可以了。
 
不是这样的.看Delphi的帮助:
procedure HasFormat(Format: Word): Boolean;
Description
The HasFormat method determines if the Clipboard object contains a particular format. If HasFormat is True, the format is present;
if False, the format is absent. The Clipboard object keeps a list of available formats in the Formats array property.
Some of the possible values of the Format parameter follow. There are many more Clipboard formats provided by Windows, and custom formats can be registered. All are supported by HasFormat..
Value Meaning
CF_TEXT Text with each line ending with a CR-LF combination. A null character identifies the end of the text.
CF_BITMAP A Windows bitmap graphic.
CF_METAFILE A Windows metafile graphic.
CF_PICTURE An object of type TPicture.
CF_OBJECT Any persistent object.
 
Windows的拷贝粘贴机制是通过剪贴板来实现的。而剪贴板是通过OLE来实现数据传送
的,可以看一下OleSetClipboard等函数。每个支持该操作的应用程序都必须支持
IDataObject函数来完成数据传送。IDataObject包含数据的获取、存储及枚举及
处理数据变化通报的方法。可以仔细看看IDataObject部分的内容,呵呵。
CF_XXX则是一个无符号整形数,表明了某种数据格式。你也可以注册你自己的剪贴板
的格式。
 
这很复杂。
 
多人接受答案了。
 
后退
顶部