Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Системное программирование и WinAPI > Передача данных между процессами |
Автор: bass 6.11.2010, 18:21 |
Ребят такая ситуация... Думаю уже неделю. ![]() ![]() далее подменяю одну из ее функций на свою.... Все работает...... НО такая длл находиться может как в системном процессе так и админском и узерском....... Нужно чтоб она читала данные из например открытого файла в памяти и в соответствии выполняла действия..... Но неизвестно когда какой процесс может обратиться к этому файлу...... У меня была такая ситуация когда файл создал системный процесс , другие не могли его открыть(Ну кроме системных).... Реестр не хочу использовать скорость будет не охти.... Как ребят выкрутиться?????? Если есть у кого соображения или ссылочки где почитать????(Не могу наити в инете привилегии систем....) Заранее благодарен.... |
Автор: bass 6.11.2010, 18:41 |
Забыл еще смотрю в сторону проверки с какими правами длл и из такого файла читать но это нагромождение кода да еще проврка узера на ранней стадии может вызвать исключение..... |
Автор: GremlinProg 8.11.2010, 14:53 |
зайди под админом, создай где-нибудь папку, открой ей полный доступ для пользователей и обменивайся через нее сколько угодно |
Автор: icecrashldr 8.11.2010, 17:07 | ||
|
Автор: bass 8.11.2010, 19:57 |
Я бы с удовольствием...... Но хотелось бы через память.... Обращении к жескому диску достаточно долгие..... Также говорил про реестр.... Погоди либо на файл в памяти можно установить уровень доступа????(Прям чуточку поподробнее..) Ой в эту сторону точно не смотрел....... Тогда вопрос как писать отребуты безопасности чтоб если файл открыл системный процесс а доступ имели все и на открытие в CreateFileMaping...... icecrashldr спасибо ткнул меня в нужное напрвление наверно заработался.......... Ща погуглю...... но если не сложно кому кинте пример.... |
Автор: bass 17.11.2010, 07:32 |
K> SECURITY_DESCRIPTOR sd = {sizeof(SECURITY_DESCRIPTOR)}; K> ::InitializeSecurityDescriptor(&sd, SECURITY_DESCRIPTOR_REVISION); K> ::SetSecurityDescriptorDacl(&sd, TRUE, NULL, FALSE); K> SECURITY_ATTRIBUTES sa = {0}; K> sa.nLength = sizeof(SECURITY_ATTRIBUTES); K> sa.lpSecurityDescriptor = &sd; K> sa.bInheritHandle = true; Доступ всем кажется заработало.................. ![]() ![]() icecrashldr спасиб что в нужную сторону ткнул, я кажется заработался ![]() ![]() |
Автор: bass 17.11.2010, 14:36 |
опять гарбли функция SetSecurityDescriptorDacl и InitializeSecurityDescriptor в ранний момент загрузки приводит к исключению.......... Даже если длл в памяти....... Проверяю факт загрузки системы.... На наличей запущенного своего ехе файла.... |
Автор: 12usver12 29.11.2010, 21:50 |
пайпы, сокеты , можно выделить кусок память в другом процессе каком-то и через нее общаться ![]() |