Изменение родительского процесса для explorer.exe - PullRequest
0 голосов
/ 02 июня 2009

Я использую CreateProcess для запуска Notepad.exe, но родительский процесс для блокнота - моя собственная точка доступа. Когда я закрыл свою собственную точку доступа, родительский процесс блокнота стал проводником. Как мне сделать проводник родительским для этого нового открытого процесса?

Ответы [ 3 ]

3 голосов
/ 04 июня 2009

Этот вопрос не имеет смысла. В Windows нет реальных родительских и дочерних отношений между процессами, как в других ОС. Между прочим, некоторая информация о процессе запуска сохраняется, но за пределами кода запуска CreateProcess, который дублирует дескрипторы и среду из родительского процесса, дальнейшие особые отношения между процессами отсутствуют. Они бегут, совершенно независимо, как сверстники.

Некоторые менеджеры задач действительно демонстрируют иерархические отношения, подразумевающие, что родительские дочерние отношения сохраняются, но в конечном итоге это просто получается путем сканирования списка информации о создании процессов, чтобы увидеть, могут ли быть найдены совпадения, подразумевающие, что другие процессы были их создателями - и, следовательно, родительскими. 1003 *

3 голосов
/ 04 июня 2009

Попробуйте использовать CreateRemoteThread (), чтобы создать новый поток в адресном пространстве файла explorer.exe (если он запущен), а затем запустите Блокнот.

0 голосов
/ 02 июня 2009

Не существует встроенного способа установить explorer.exe в качестве родительского процесса сразу. Однако из того, что я могу сказать, вы можете использовать p / invoke, чтобы сделать несколько вызовов для достижения этой цели.

Вот статья о реализации с использованием p / invoke для запуска от имени другого пользователя. Это дает вам введение в процесс p / invoke. Тогда статья , в которой говорится о запуске не дочернего процесса. Вы можете объединить информацию из двух для достижения желаемой цели.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...