According to remark about EmptyDialog(), an application must open the clipboard before emptying it by using the OpenClipboard function. If the application specifies a NULL window handle when opening the clipboard, EmptyClipboard succeeds but sets the clipboard owner to NULL. This can cause SetClipboardData to fail.
https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-emptyclipboard
According to remark about EmptyDialog(), an application must open the clipboard before emptying it by using the OpenClipboard function. If the application specifies a NULL window handle when opening the clipboard, EmptyClipboard succeeds but sets the clipboard owner to NULL. This can cause SetClipboardData to fail. https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-emptyclipboard