从剪贴板保存 OLE 对象

Posted

技术标签:

【中文标题】从剪贴板保存 OLE 对象【英文标题】:Save OLE object from Clipboard 【发布时间】:2012-06-07 09:26:27 【问题描述】:

我在剪贴板中有非托管 OLE 对象。 我通过下一个代码将其放入剪贴板:

[DllImport("mfc80u.dll", CallingConvention = CallingConvention.ThisCall, EntryPoint = "#1532")]
public static extern void COleClientItem_CopyToClipboard(IntPtr thisClientItem, int bIncludeLink);

我如何知道它是谁的对象(例如 Word、Excel 或图像)以及如何通过 C# 将其保存在文件中?

【问题讨论】:

【参考方案1】:

我不知道你在 C# 中是如何做到的。我知道您需要尝试获取 CF_OBJECTDISCRIPTOR 剪贴板格式并检查生成的 OBJECTDESCRIPTOR 对象的 clsid 成员。从 CLSID 中,您可以查看它是否匹配 Word、Excel 等。

http://msdn.microsoft.com/en-us/library/windows/desktop/ms683735(v=vs.85).aspx

【讨论】:

谢谢。我会努力做到的。

以上是关于从剪贴板保存 OLE 对象的主要内容,如果未能解决你的问题,请参考以下文章

从剪贴板保存图像

是否可以将画布图像复制到剪贴板?

客户端系统剪贴板打印屏幕图像保存在服务器系统中

A-frame:如何将使用 3d 小部件所做的检查器更改保存到剪贴板

将剪贴板中的位图保存到 wpf 应用程序中的 png

AS3 如何将数据从对象提取到剪贴板、rest、db、文件等?