1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Именнованный объект жизни после процесса

Тема в разделе "WASM.HEAP", создана пользователем shchetinin, 22 июл 2011.

  1. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    Сопстевенно говоря есть ли способ как то это обойти, после процесса именнованный объект родолжает жить (например семафор).
    - Без допалнительно процесса.
    - И без драйвера.
     
  2. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    CreateSemaphore
    Use the CloseHandle function to close the handle. The system closes the handle automatically when the process terminates. The semaphore object is destroyed when its last handle has been closed.
     
  3. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    MSDN, конечно хорошо, я так и думал что нельзя, просто мало ли ... :)
     
  4. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    shchetinin
    Чего нельзя?
     
  5. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    Оставить семфор без процессов и драйвера.
     
  6. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    shchetinin
    Так вам его нужно оставить после жизни процессов? Можно поинтересоваться, зачем?
    В принципе можно инжекнуть поток куда-нибудь наподобии эксплорера, но это грязно и стоит ли того?
     
  7. 100gold

    100gold New Member

    Публикаций:
    0
    Регистрация:
    26 фев 2010
    Сообщения:
    165
    Зачем поток ижектить, можно же хендл "сдуплицировать" - если суметь создать хендл гденить в "вечном" процессе (csrss например), то семафор будет жить
     
  8. newbie

    newbie New Member

    Публикаций:
    0
    Регистрация:
    2 дек 2008
    Сообщения:
    1.246
    мьютекс можно оставить жить вместо семафора
     
  9. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    100gold
    А как вы создадите хендл без ижекта потока?

    Мьютекс в это плане отличается о семафора? С чего это в друг?
     
  10. 100gold

    100gold New Member

    Публикаций:
    0
    Регистрация:
    26 фев 2010
    Сообщения:
    165
    BOOL WINAPI DuplicateHandle(
    __in HANDLE hSourceProcessHandle,
    __in HANDLE hSourceHandle,
    __in HANDLE hTargetProcessHandle,
    __out LPHANDLE lpTargetHandle,
    __in DWORD dwDesiredAccess,
    __in BOOL bInheritHandle,
    __in DWORD dwOptions
    );

    Главное суметь получить нужный hTargetProcessHandle.
     
  11. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    100gold
    Согласен, никогда не пользовался этой функцией.
     
  12. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    100gold
    Вот это и нужно было, чето я про эту функцию забыл.. спасибо!
     
  13. klzlk

    klzlk New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2011
    Сообщения:
    449
    Тело не живёт без мозга. Также и обьект не живёт без процесса.
     
  14. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    shchetinin
    Некоторые объекты (наверняка, семафоры тоже) можно создавать с флагом OBJ_PERMANENT.
     
  15. newbie

    newbie New Member

    Публикаций:
    0
    Регистрация:
    2 дек 2008
    Сообщения:
    1.246
    А после ребута они тоже сохранятся? о_О
     
  16. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    l_inc
    Мне не изместин способ для монипуляции OBJECT_ATTRIBUTES в юзер спейсе, а в адре все свелось бы к **** .

    newbie
    После ребута объекта быть и не должно:)

    Так что DuplicateHandle здравое решение ...
     
  17. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    shchetinin
    Э... Как это неизвестен? При создании любого объекта нативной ф-ией указывается OBJECT_ATTRIBUTES.
     
  18. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    l_inc
    Согласен, согласен, но уже вроде накодили, но это дажет интерестней решение.