Ошибка Selenium при попытке присвоить значение буфера обмена переменной внутри цикла do while - PullRequest
0 голосов
/ 17 января 2019

В основном мне нужно выполнить команду "CTLR + C", пока в буфере обмена не появится значение, которое необходимо скопировать.

Итак, мой код следующий:

        public void emulateCopy(string expectedText)
    {

        Actions copy = new Actions(driver);
        copy.KeyDown(Keys.Control).SendKeys("c").KeyUp(Keys.Control).Build();

        string clipboardText;

        do
        {
            copy.Perform();
            clipboardText = Clipboard.GetText();
        }
        while (clipboardText == expectedText) ;

    }

Проблема в том, что когда я выполняю свои дела, я получаю следующую ошибку:

Сообщение: System.Threading.ThreadStateException: Текущий поток должен быть переведен в однопотоковый режим (STA), прежде чем могут быть выполнены вызовы OLE.

Я пытался использовать [STAThread] и несколько других методов, но у меня это не сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...