В основном мне нужно выполнить команду "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] и несколько других методов, но у меня это не сработало.