Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Узнать информация про процесс, запустивыший, мой процесс 
:(
    Опции темы
tishaishii
Дата 27.3.2007, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: нет
Всего: 8



Вот какой-то процесс запустил мою программу.
Внутри моей программы я хочу знать какой именно процесс её запустил и решить как ей себя вести дальше.
PM MAIL ICQ Skype   Вверх
Tectoder
Дата 27.3.2007, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 202
Регистрация: 13.3.2007

Репутация: нет
Всего: 8



Используя CreateToolhelp32Snapshot + Process32First+ Process32Next можно получить для своего процесса структуру PROCESSENTRY32, в котороей есть поле с id родительского процесса.
Как короче, не знаю.
PM   Вверх
Kirill89
Дата 28.3.2007, 00:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 17.10.2006
Где: Питер

Репутация: 3
Всего: 4



tishaishii
процесс твой?
Если тебе нужно, чтобы программа запускалась только из одной другой программы (своей), то просто переда ей параметр.


--------------------
PM MAIL WWW   Вверх
mihanik
Дата 28.3.2007, 07:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Итак...
Есть процесс1 и процес2.
Процесс2 запущен процессом1.

Можно спросить у процесса2, кто его запустил?
Можно.

Например так!!!

Код

Dim MyProcess, MyProcessCol, MyParentProcessId

' Получим коллекцию всех экземпляров Блокнота (notepad.exe), которые висят в памяти
Set MyProcessCol = GetObject("winmgmts:").ExecQuery ("select * from Win32_Process where Name='" & "notepad.exe" & "'" )

' Узнаем количество запущенных Блокнотов
msgbox "Найдено запущенных процессов: " & MyProcessCol.Count

'  Для каждого процесса найдём его ParentProcessId
For Each MyProcess in MyProcessCol
         msgbox MyProcess.ParentProcessId
Next


По ParentProcessId можно попытаться ещё что-нибудь узнать...

В принципе, по ID процесса можно узнать его имя, заголовок, откуда запущен и т.д...


Это сообщение отредактировал(а) mihanik - 28.3.2007, 07:38


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
tishaishii
Дата 28.3.2007, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: нет
Всего: 8



Цитата(Kirill89 @ 28.3.2007,  00:17)
tishaishii
процесс твой?
Если тебе нужно, чтобы программа запускалась только из одной другой программы (своей), то просто переда ей параметр.

Параметр может передать кто угодно.
PM MAIL ICQ Skype   Вверх
Kirill89
Дата 28.3.2007, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 17.10.2006
Где: Питер

Репутация: 3
Всего: 4



tishaishii, согласен, только при условии, что он знает какой именно параметр передавать.


--------------------
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1216 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.