Что раньше: появления процесса или загрузка DLL

Тема в разделе "WASM.WIN32", создана пользователем Drakon, 8 янв 2006.

  1. Drakon

    Drakon New Member

    Публикаций:
    0
    Регистрация:
    24 сен 2004
    Сообщения:
    85
    Адрес:
    Russia
    Что произойдёт раньше: завершение выполнения DllMain в библиотеках, прописанных в директории импорта или появление процесса в списках user-mode, например через ToolHelp функции?
     
  2. Dr.Golova

    Dr.Golova New Member

    Публикаций:
    0
    Регистрация:
    7 сен 2002
    Сообщения:
    348
    Сначал образ ехе, потом библиотеки, потом, когда уже точно все в порядке - в список.
     
  3. CARDINAL

    CARDINAL Member

    Публикаций:
    0
    Регистрация:
    23 янв 2004
    Сообщения:
    551
    Адрес:
    Moscow
    мда, только прежде всего этого , создается EPROCESS, вот, собсно, значит оно и первое )
     
  4. z0mailbox

    z0mailbox z0

    Публикаций:
    0
    Регистрация:
    3 фев 2005
    Сообщения:
    635
    Адрес:
    Russia СПБ
    для длл из секции импорта:

    прикольно что когда приходит DebugEvent на LoadDll то ее самой еще нет в списках (ну через GetModuleHandle например). она появится на следующем LoadDll

    а еще прикольно видел - тоже при DEBUG_PROCESS - если dll на process_attach отвечает 0 типа ошибка, то процесс запустится(!) если на exception STATUS_DLL_INIT_FAILED дебуггер скажет DBG_CONTINUE
     
  5. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    В списке таск менеджера процесс появляется сразу после выполнения ф-ции CreateProcess(CREATE_SUSPENDED), т.е. ещё до передачи управления загрузчику или сообщений отладчику ring3