Выезд LiquiBase для руководящих изменений базы данных с помощью управления исходным кодом.
Вы действительно запустили процесс, когда был сделан снимок отладчика? Это снимок экрана, который я ожидал увидеть перед вызовом метода Start ()
.
Обратите внимание, что общий шаблон - создать ProcessStartInfo
, заполнить его и затем вызвать статический метод Process.Start (startInfo)
. Это упрощает концептуально: вы не видите объект Process
, пока он не будет запущен.
Да, это ожидаемое поведение, и оно также четко задокументировано в MSDN.
Например, свойство Process.BasePriority может вызвать исключение InvalidOperationException, когда процесс завершился или процесс не был запущен (подробнее см. В MSDN ).
Многие свойства помечены как InvalidOperationException, потому что до тех пор, пока вы не запустите процесс. Объект myProcess не связан ни с одним запущенным процессом и, следовательно, не может получить информацию.
Попробуйте добавить эти операторы после кода для запуска процесса
if (myProcess != null)
{
myProcess.WaitForExit();
//or any other statements for that matter
}
Теперь, когда вы находитесь внутри оператора if, VSTS отладчик сможет отображать большинство свойств, связанных с объектом myProcess. Это происходит потому, что объект myProcess теперь связан с запущенным процессом «IExplore.exe».