Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Системное программирование и WinAPI > Совместное использование обьектов ядра |
Автор: acersanyaua 3.12.2014, 01:05 |
У меня есть обьект ядра например WaitableTimer , я его создал HANDLE htimerProcess = CreateWaitableTimer(NULL, FALSE, L"Time1"); и я хочу например что бы другой процесс использовал мой обьект ядра HANDLE htimerProcess2 = CreateWaitableTimer(NULL, FALSE, L"Time1"); Т.е я дублирую имя , в качестве 3 параметра передаю имя первого обьекта. И тут я начинаю не понимать, это значит что я создал новый обьект с такой же самой таблицей описателей ? Или это просто копия (ссылка) на существующий обьект и как это можно доказать , ведь адреса у этих обьектов разные. Заранее спасибо. |
Автор: Dem_max 3.12.2014, 08:03 | ||
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682492(v=vs.85).aspx
|
Автор: xvr 3.12.2014, 13:05 | ||
Оно самое (http://msdn.microsoft.com/en-us/library/windows/desktop/ms682492%28v=vs.85%29.aspx) -
А откуда вы адреса взяли? HANDLE это не адрес, а просто число. Физически ваши объекты лежат в кернеле. Что бы извлечь их имена, можно воспользоваться функций (частично недокументированной) http://undocumented.ntinternals.net/source/usermode/undocumented%20functions/nt%20objects/type%20independed/ntqueryobject.html Вот еще для затравки - http://technet.microsoft.com/en-us/sysinternals/bb896657.aspx |