Сообщение Excel во время кода (C #) - PullRequest
0 голосов
/ 19 октября 2011

Когда мой код работает, у меня появляется всплывающее окно сообщения из Excel, в котором повторяется попытка. Я просто хочу, чтобы мой код мог имитировать нажатие клавиши ввода, если он появляется, что происходит каждый раз.Это окно сообщений, которое появляется и замораживает мой код.

enter image description here

Я отключил один из них с помощью сообщения OLE, но я все еще получаю это окно сообщений в любом случае для имитации щелчкапри повторной попытке или вводе ключа,?

//Turn off OLE Error Message
oXL.DisplayAlerts = false;

Ответы [ 3 ]

2 голосов
/ 19 октября 2011

Вы можете попробовать sendkeys, чтобы отправить нажатие клавиши в окно сообщения

1 голос
/ 19 октября 2011

InputSimulator - очень гибкая (и надежная) оболочка, способная имитировать события клавиатуры и мыши.

Он скрывает SendInput, но абстрагирует все вызовы PInvoke и другие сложности. Это капля в DLL, которая (для вашей ситуации) должна занимать только одну строку кода.

InputSimulator.SimulateKeyPress(VirtualKeyCode.ENTER);
0 голосов
/ 19 октября 2011

Мне интересно, если проблема вызвана тем, что у вас большой цикл, который никогда не использует вызов Application.DoEvents()?Что касается отклонения сообщения, которое кажется мне плохим способом решения проблемы.

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