Может ли кто-нибудь помочь мне разобраться с процессом, который вызывается процессом func.Начать();?

#c# #winforms #process #get #handle

Вопрос:

Например, я хочу получить дескриптор из браузера.

  private void button1_Click(object sender, EventArgs e)
        {
            Process.Start("https://google.com/");
            //How to get handle of this process?
            
        }
 

Комментарии:

1. Process.Start возвращает Process объект, который, в свою очередь, обладает Handle свойством

2. Process.Start возвращает Process объект для запущенного процесса, который обладает Handle свойством. Что сказано, браузеры, как правило, для отображения нескольких страниц в одном процессе (в разных вкладках), и поэтому, если у вас есть браузер, процесс запущен и вам попробовать и начать новый, новый, наверное, говорить уже существующий, чтобы открыть страницу в новой вкладке и затем «выход», что означает, что Process вы получите обратно от Process.Start не может жить очень долго. Ты мало что можешь с этим поделать.

3. Ага. Я это знал… Поэтому, если я сохраню браузер веб-сайта как file.html. Могу ли я получить его ручку? И это правда, что если я сохраню только одно окно браузера?

Ответ №1:

Process.Start() возвращает Process объект вновь созданного процесса.

В приведенном ниже примере myProcess.Handle это будет дескриптор указанного процесса.

 var myProcess = Process.Start("notepad.exe");
Console.WriteLine(myProcess.Handle);
 

Комментарии:

1. Точно так же, как соль на чипсах , ответы всегда лучше с описанием , хотя бы однострочным.

2. Спасибо, что посолил. 🙂 Надеюсь, вы не возражаете, но я поместил ваше описание сверху. 1

3. Хорошо, я понял, спасибо, ребята.