windows – 如何确定剪贴板数据大小?
发布时间:2020-12-14 01:53:41 所属栏目:Windows 来源:网络整理
导读:我在剪贴板中有一个自定义数据格式(由第三方程序放在那里). 我使用以下方法从剪贴板中获取数据的大小: HANDLE data = GetClipboardData(format);DWORD len = GlobalSize(data); 问题是,我得到的数据大小不正确(实际应该是大约100字节).我的意思是,剪贴板中
我在剪贴板中有一个自定义数据格式(由第三方程序放在那里).
我使用以下方法从剪贴板中获取数据的大小: HANDLE data = GetClipboardData(format); DWORD len = GlobalSize(data); 问题是,我得到的数据大小不正确(实际应该是大约100字节).我的意思是,剪贴板中真实“有效”数据的大小是不同的.此外,我从一个调用到另一个调用获得不同的(!)数据大小(尽管数据本身不会改变).看起来很神秘.我的意思是,如果我只是继续在循环中执行上面的两行,那么对于这种格式,我将在“len”中得到不同的值. 所以我基本上有两个问题…… >为什么“GlobalSize”可能会针对相同的数据将非常量值从一个调用返回到另一个调用? 先感谢您! 解决方法
从
GlobalSize 功能的MSDN页面:
因此,您不能依赖GlobalSize来返回所请求的分配大小.相反,您应该将大小作为数据对象本身的一部分传递(例如,以包含大小的DWORD开头,然后是数据). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- tfs – 使用Team Foundation Services的Microsof
- 在Windows批处理文件中,您可以链式执行*不是*另一
- windows-server-2008 – HTTP错误503.该服务不可
- .net – 是否有可能在类中具有版本无关的DLL引用
- windows+tomcat+https(免费证书)
- windows-phone-8.1 – Windows Phone 8.1应用程序
- .net – 控制台应用程序在Windows服务上的优点
- 在Windows Server 2008中自动登录
- windows-server-2012-r2 – 用户文件夹被重命名为
- 修复win10设置还原点时出现的80042302错误
热点阅读