Ключ реестра AppInit_DLLs

Discussion in 'WASM.WIN32' started by Rustem, Mar 3, 2007.

  1. Rustem

    Rustem New Member

    Blog Posts:
    0
    Приветствую!

    Хочу сделать инжект своей длл в игрушку под директ икс.
    Но вот в чем проблема: во все не DX процессы внедряется, а в те которые на directX нет.
    Даже в тестовый пример из DXSDK не хочет внедряться(

    В чем может быть дело?
     
  2. n0name

    n0name New Member

    Blog Posts:
    0
    AppInst_DLLs только для оконных приложений.
     
  3. WIN32

    WIN32 Member

    Blog Posts:
    0
    Внедряй руками.
     
  4. Rustem

    Rustem New Member

    Blog Posts:
    0
    n0name Вроде все игры по умолчанию оконные

    WIN32
    Я бы с удовольствием руками, но!

    Допустим, на игре такая защита safedisk. Если я запускаю экзе, то тот в свою очередь создает еще один, и он является игрой.
    И как в него внедрять?
    Думал, что нашел наипростейший способ и такая фигня
    Самое интересное в игру на OpenGL внедряется, в DX - нет
     
  5. HoBleen

    HoBleen New Member

    Blog Posts:
    0
    Либы, прописанные в AppInit_DLLs, загружаются вместе с user32.dll. Так что если его в статическом импорте нету и грузиться она не собирается, то ничего и не подгрузится.
     
  6. Rustem

    Rustem New Member

    Blog Posts:
    0
    HoBleen
    Посмотрел: user32.dll есть в таблице.
    Но не грузится и всё тут.

    Мля, неохота драйвер писать...
     
  7. WIN32

    WIN32 Member

    Blog Posts:
    0
    Rustem
    Ну внедряй в процесс а не на файл на диске.
     
  8. Rustem

    Rustem New Member

    Blog Posts:
    0
    WIN32
    Я и внедряю в процесс :) Нахрен мне файл

    Мне нужно, чтобы моя дллка была в нужном мне процессе. Метод не имеет значения.
     
  9. CnCVK

    CnCVK New Member

    Blog Posts:
    0
    Можно подменить еще D3D9.DLL и другие :)
    (Кладешь в директории с игрой)
    пишешь свою - там одна экспортируемая функция
    при загрузке загружаешь оригинал из System32.
    100% работает.
     
  10. Nouzui

    Nouzui New Member

    Blog Posts:
    0
    странно.. на моем сп1 этот ключик работает и для консольных приложений, и для приложений, не использующих импорт вообще..
     
  11. Rustem

    Rustem New Member

    Blog Posts:
    0
    Проверил ключик на 2-х компах с xpsp2. В общем, в dx приложение НЕ внедряется. Во все остальное - все отлично

    Проблему решил след. образом:
    Внедряю свою дллгу в процесс, который запускает другой. В дллге перехватываю CreateProcessA(W), и внедряю по-новой, а в длл проверяю, нужный ли это мне процесс.

    CnCVK
    Все таки лучше НЕ заменять D3D9.DLL,а внедрять свою, т.к. приложение может использовать функции, которые ты не учитываешь