Как правильно закрыть процесс экранной клавиатуры из C # winform?

В настоящее время я разрабатываю программу просмотра изображений, которая позволяет пользователю вводить свою электронную почту и получать изображения в цифровом виде. Меня беспокоит то, что экранная клавиатура закрывается. Я использую этот кусок кода для запуска процесса Windows:

string progFiles = @"C:\Program Files\Common Files\Microsoft Shared\ink";
string keyboardPath = Path.Combine(progFiles, "TabTip.exe");
Process keyboardProc = Process.Start(keyboardPath);

После чего я открываю VB InputBox, чтобы запросить адрес электронной почты (для которого я использую экранную клавиатуру, поскольку приложение будет отображаться на сенсорном экране). После этой подсказки я хочу автоматически закрыть процесс.

Я пытался закрыть процесс с помощью следующего:

keyboardProc.Kill();
keyboardProc.Dispose();
keyboardProc.Close();
keyboardProc = null;

Ни один из них не работает, а просто выдает исключение:

An unhandled exception of type 'System.InvalidOperationException' occurred in System.dll
Additional information: Cannot process request because the process has exited.

Я также попытался идентифицировать процесс по ID и закрыть его таким образом, тоже не сработало. Я также посмотрел на:C # /. NET: закрытие другого процесса за пределами главного окна но он тоже не заработал .. :(

Я довольно новичок в C #, и это первый раз, когда я запускаю процесс Windows из кода - я что-то упустил?

Заранее большое спасибо!

Ответы на вопрос(4)

Ваш ответ на вопрос