使用Inputsimulator时与剪贴板有异常

时间:2015-12-04 08:51:24

标签: c# wpf

我的项目是关于文本处理软件并使用InputSimulator library

当我的程序模拟Ctrl + C并从剪贴板获取文本时,它会出现这样的异常。

An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in     PresentationCore.dll

Additional information: OpenClipboard Failed (Exception from HRESULT:0x800401D0 (CLIPBRD_E_CANT_OPEN))

here's我的项目,这是我的代码

        System.Threading.Thread.Sleep(3000); // wait for opening notepad and type any text to test
        while (true)
        {
            string oldclipboard = Clipboard.GetText();
            InputSimulator input = new InputSimulator();
            input.Keyboard.ModifiedKeyStroke(VirtualKeyCode.CONTROL, VirtualKeyCode.VK_A); // select text

            input.Keyboard.ModifiedKeyStroke(VirtualKeyCode.CONTROL, VirtualKeyCode.VK_C);
            string highlightedtext = Clipboard.GetText();
            //do sth.(text processing)
            input.Keyboard.ModifiedKeyStroke(VirtualKeyCode.CONTROL, VirtualKeyCode.VK_V);
        }

我确定它是关于库和剪贴板之间的冲突。 但我不知道是什么问题。

那么,为什么会抛出异常呢?还有其他方法吗?

由于

P.S。我也尝试“Sendkeys.Sendwait”。它没有任何例外,但它不稳定。

0 个答案:

没有答案