在什么情况下Win32 API函数OleGetClipboard()会失败并返回CLIPBRD_E_CANT_OPEN

更多背景信息:我正在协助解决Firefox错误。详细信息在这里:

bug 444800 - cannot retrieve image data from clipboard in lossless format

在我帮助编写的自动化测试中,我们看到OleGetClipboard()有时会失败并返回CLIPBRD_E_CANT_OPEN。这是出乎意料的,而从Windows剪贴板提取图像数据的Firefox代码取决于该调用是否成功。

最佳答案

该文档说,如果OleGetClipboard失败,则OpenClipboard可能会失败,并显示此错误代码。反过来,如果您阅读该文档,则说明:

OpenClipboard 如果另一个窗口打开了剪贴板,则失败。

这是一种专有资源:一次只能打开一个窗口的剪贴板。基本上,如果您无法执行此操作,请稍等片刻,然后重试。

10-07 15:04