Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.15;
Скачать: CL | DM;

Вниз

InterProcessCommunication   Найти похожие ветки 

 
sdkit   (2007-02-06 14:50) [0]

доброго времени суток всем.
не подскажите, можно ли получить список объектов (а именно memory-mapped-file"ов) в системе, выполняясь на уровне пользователя или службы...


 
Игорь Шевченко ©   (2007-02-06 14:51) [1]

Можно, но очень сложно. Возникает вопрос - а нафига ?


 
sdkit   (2007-02-07 06:49) [2]

Извините, но было бы не нужно - не спрашивал бы..
Задача - есть n-ое количество процессов, которые создают по одному mmf на процесс, имена mmf неизвестны. Необходимо получить список mmf, если известно имя exe-шника процесса, но неизвестно количество копий процесса (я думаю, не стоит уточнять, что имена mmf уникальны)..


 
Alex Konshin ©   (2007-02-07 09:18) [3]

Если они именованные, то очень просто.
Скачай WinObj http://www.microsoft.com/technet/sysinternals/SystemInformation/WinObj.mspx
Если ты там увидишь те объекты, что тебе нужны, то достать их из твоей программы будет достаточно просто. У меня на сайте есть пример NativeApp, да и у Игоря было что-то по этому поводу.


 
Чапаев ©   (2007-02-07 09:19) [4]

> имена mmf уникальны
Дописывай к имени идентификатор процесса.


 
Игорь Шевченко ©   (2007-02-07 10:41) [5]


> Необходимо получить список mmf, если известно имя exe-шника
> процесса, но неизвестно количество копий процесса (я думаю,
>  не стоит уточнять, что имена mmf уникальны)..


Связка NtQuerySystemInformation (SystemHandleInformation)+ NtQueryObject может быть и справится


 
sdkit   (2007-02-07 13:14) [6]

спасибо всем, пошел по простейшему пути - exename+pid, правда, для этого пришлось вытребовать исходник того, что их делает...

а теперь еще один интересный вопрос - могу ли я, крутясь на уровне службы, прибить этот объект?


 
Чапаев ©   (2007-02-07 13:24) [7]

> [6] sdkit   (07.02.07 13:14)
Без извращений -- нет, насколько я знаю.


 
BiN ©   (2007-02-07 14:05) [8]


> sdkit   (07.02.07 13:14) [6]

DuplicateHandle(...., DUPLICATE_CLOSE_SOURCE) (?)


 
sdkit   (2007-02-07 14:41) [9]

DuplicateHandle не работает... есть сильное подозрение, что я не могу прибить не-свой-объект


> Чапаев

а с извращениями?
или другой вопрос - при TerminateProcess удаляются подобные объекты или нет?


 
Riply ©   (2007-02-07 14:53) [10]

>[9] sdkit   (07.02.07 14:41)
>DuplicateHandle не работает... есть сильное подозрение, что я не могу прибить не-свой-объект
У меня срабатывал


 
Kolan ©   (2007-02-07 15:00) [11]

> или другой вопрос - при TerminateProcess удаляются подобные
> объекты или нет?

Я конечно не спец, но имхо они удалятся когда никому нужны не будут. Те если их 2 процесса используют, а ты прибьёшь 1, то объект останется.


 
BiN ©   (2007-02-07 15:11) [12]


> sdkit   (07.02.07 14:41) [9]
>
> DuplicateHandle не работает


Работает.

Другой вопрос, какие могут быть негативные последствия такого варварского способа вмешательства в работу стороннего процесса.


 
sdkit   (2007-02-08 06:56) [13]

блин, ну я же говорю - "не прыгают они"!

последствия вмешательства, я думаю, неважны - если уж я прибиваю объект, принадлежащий зависшему процессу, которого ждет Terminate...


 
BiN ©   (2007-02-08 10:13) [14]


> sdkit   (08.02.07 06:56) [13]
>
> блин, ну я же говорю - "не прыгают они"!

код в студию или транспортир.


 
GrayFace ©   (2007-02-09 01:20) [15]

sdkit   (08.02.07 6:56) [13]
последствия вмешательства, я думаю, неважны - если уж я прибиваю объект, принадлежащий зависшему процессу, которого ждет Terminate...

Дак зачем тогда прибивать?


 
sdkit   (2007-02-09 07:01) [16]

вот я потому и спрашиваю, что нет у меня уверенности в том, что система прибъет эти объекты...

P.S. экспериментальным путем установлено, что неопознанные объекты ядра удаляются.. соответственно, надобность в DuplicateHandle etc. отпадает

Всем спасибо



Страницы: 1 вся ветка

Текущий архив: 2007.07.15;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.025 c
2-1182139121
Riply
2007-06-18 07:58
2007.07.15
DeviceIoControl и повторное открытие диска.


15-1181997704
Val
2007-06-16 16:41
2007.07.15
Вопрос по C#


3-1176832923
isasa
2007-04-17 22:02
2007.07.15
Строка ключей и оператор SELECT


2-1182421598
beg
2007-06-21 14:26
2007.07.15
Создание формы по имени класса


15-1181924295
reonid
2007-06-15 20:18
2007.07.15
D1