Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: PID <- ShellExecute Добавлено: 20.04.06 20:02  

Автор вопроса:  gvozd | Web-сайт: www.gvozdsoft.com

Ответить

  Ответы Всего ответов: 19  

Номер ответа: 16
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #16 Добавлено: 24.04.06 12:39
LamerOnLine
Если рассуждать так как ты рассуждаешь, то парент может быть только один: процесс System и более никого, ибо все следы ведут к нему.
Речь не идёт о субпарентах и субчайлдах. Только в пределах одной ступени.
Строить полное дерево со всей иерархией отцов и детей смысла нет. Т.к. дед не рожает внука.
Чтобы отследить все процессы, запущеные данным процессом в одном поколении, ParendID более чем достаточно. А следующие поколения - они запущены не нашим процессом, хотя и потомками нашего. Они нас не интересуют.

Ответить

Номер ответа: 17
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #17 Добавлено: 24.04.06 12:52
Я немного о другом - будет ли ParentID процесса, созданного запуском документа через ShellExecute, именно ID того процесса, который запускал ShellExecute? Уверенности нет, ибо не проверял.

Ответить

Номер ответа: 18
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #18 Добавлено: 24.04.06 13:10
Именно так и будет.
Моя прога (PID=2032) запускает через ShellExecute файл c:\1.txt.
У появившегося процесса Notepad ParentID=2032.

Ответить

Номер ответа: 19
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #19 Добавлено: 24.04.06 13:16
Ну раз так, то несколько проще. Хотя такой метод поиска последнего запущенного процесса, ИМХО, не является ни надежным, ни оптимальным.
Фактически, можно с такими же затратами узнать какое приложение ассоциировано с данным расширением и запустить его через Shell (CreateProcess).

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам