В моем консольном приложении вызывается SendKeys.SendWait("^c")
, чтобы скопировать выделенный текст в буфер обмена.Почему SendKeys.SendWait() отключает мое приложение
Он отлично работает, но если мое консольное приложение имеет фокус, когда оно вызывается, вместо того, чтобы бросать исключение, оно просто закрывает мое приложение. И после этого все начинает действовать, как мое колесо мыши, влияющее на зум, вместо прокрутки вверх и вниз.
Зачем дозировать это.
Посмотрите, что происходит, если вы обычно нажать Ctrl-C в то время как ваше консольное приложение имеет фокус (до Windows 10, по крайней мере). Что касается другой части, обратите внимание, что если ваше приложение закрывается, у него никогда не будет возможности выпустить ctrl. – chris
@chris Я просто сделал то, что вы сказали, и мое приложение закрылось, как обычно. Так что это 'ctrl + c' ярлык Visual Studio, и я могу исправить это. – JackBarn
Ctrl-C - это [сигнал ОС для завершения консольных процессов] (https://msdn.microsoft.com/en-us/library/windows/ настольные/ms682541% 28v = vs.85% 29.aspx). Класс 'Console' может переопределить это с помощью [TreatControlCAsInput] (https://msdn.microsoft.com/en-us/library/system.console.treatcontrolcasinput (v = vs.110) .aspx) или событие CancelKeyPress. –