如何释放由另一个进程锁定的剪贴板?

时间:2011-11-25 20:45:26

标签: c# wpf clipboard clipboard-interaction

我有一个问题,在我试图从剪贴板中检索对象修改它并将其添加回来...

我一次又一次地

  

无法执行剪贴板上的请求操作

看起来某些进程正在锁定剪贴板,如何释放剪贴板?

1 个答案:

答案 0 :(得分:0)

你不能释放它。如果另一个应用程序打开了剪贴板,则必须等到它关闭它。如果剪贴板最近(在过去的第二或第二次)修改过,您应该期望其他应用程序将打开它进行检查,因此如果您希望能够立即打开它,则应该会出现故障。你需要使用try..except处理程序,sleep()和“3 strikes”循环 伪代码:

Success := false;
Attempts := 0;
While (Attempts < 3) and (Success = false) do
begin
  Try
    inc(Attempts);
    OpenClipboard;
    Success := true;
  except
    sleep(attempts * 1000);
  end
end;