Объединение процессов

Discussion in 'WASM.BEGINNERS' started by RFX, Mar 3, 2009.

  1. RFX

    RFX New Member

    Blog Posts:
    0
    Joined:
    Mar 3, 2009
    Messages:
    4
    Добрый день! 2 вопросика к вам знающие люди)
    1)Как в делфи можно допусти, запускаем 1 програмку(имя процесса progOne.exe) и 2-ю программу( progTwo.exe ), и процесс 1-й программы объединяется с процессом 2-й и работают как один процесс progTwo.exe?
    2)Скрыть процесс программы из диспетчера задач ?
    Если не поняли говорите, попробую объяснить по-другому)
     
  2. censored

    censored New Member

    Blog Posts:
    0
    Joined:
    Jul 5, 2005
    Messages:
    1,615
    Location:
    деревня "Анонимные Прокси"
    Только с помощью магии Девида Блейна
     
  3. jaja

    jaja New Member

    Blog Posts:
    0
    Joined:
    Jul 23, 2008
    Messages:
    243
    HANDLE hBlaine = GetModuleHandle("kernel32.dll");
    davidBlaineMagic = GetProcAddress(hBlaine,"CreateRemoteThread");
     
  4. mupsy

    mupsy New Member

    Blog Posts:
    0
    Joined:
    Nov 26, 2008
    Messages:
    55
    ну да тебе jaja смешно и правильно помог=)...Через создание удаленного потока можно,но я думаю тебе не это надо,так как хочешь ты сделать имхо нельзя...,а чтобы скрыть от диспетчера задач либо функции сплайсить Process32First,Process32Next если конечно task manager через них ищет либо отключай file protection и правь сам task manager=)
    А вообще что ты хочешь сделать?зачем два процесса тебе?Создай в одном процессе 2 потока...
     
  5. RFX

    RFX New Member

    Blog Posts:
    0
    Joined:
    Mar 3, 2009
    Messages:
    4
    дело в том что мне нужно присоединить 1-й процесс ко 2-му, а уменя нет исходного кода 2-го процесса, если бы были исходники то все вопросы были бы решены)
     
  6. jaja

    jaja New Member

    Blog Posts:
    0
    Joined:
    Jul 23, 2008
    Messages:
    243
    Еще есть среди народных умельцев индивидуалы, которые в цикле посылают LVM_DELETEITEM листвьюву диспетчера задач.
    Да и зачем все это? Все-таки у вашей задачи должны быть более простые пути решения.
     
  7. punxer

    punxer Андрей

    Blog Posts:
    0
    Joined:
    Oct 16, 2006
    Messages:
    1,327
    Location:
    Ржев
    добавь второй exe в ресурсы первого. потом при запуске сохраняй на винт. потом FileMapping и настройка релоков если надо... потом CreateRemoteThread/GetThreadContext\SetThreadContext...Можно полностью подменить процессы если надо...пиши задачу конкретней...
     
  8. Clerk

    Clerk Забанен

    Blog Posts:
    0
    Joined:
    Jan 4, 2008
    Messages:
    6,689
    Location:
    РБ, Могилёв
    Имхо это невозможно, нонсенс.
     
  9. mupsy

    mupsy New Member

    Blog Posts:
    0
    Joined:
    Nov 26, 2008
    Messages:
    55
    Ухахахах я бы тогда все процессы объединил с Winlogon.exe и вот бы классно было=)))
     
  10. RFX

    RFX New Member

    Blog Posts:
    0
    Joined:
    Mar 3, 2009
    Messages:
    4
    собственно задача такая, мне нужно чтобы мою программу(сам процесс программы, античит), не смогли закрыть, вот почему я хочу присоединить к другому процессу(самой игры), если пользователь закроет то и закроется сама игра) просто попросили написать античит для игры и вот щас мучаюсь)
     
  11. Clerk

    Clerk Забанен

    Blog Posts:
    0
    Joined:
    Jan 4, 2008
    Messages:
    6,689
    Location:
    РБ, Могилёв
    mupsy
    Что смешного ?
    К примеру два хэндла было одинаковых, при "обьеденении" какой использовать, если использовать первый, то для второго процесса не пойдёт.
    Как быть с адресным пространством, потоками, системными таблицами и прочим ?
     
  12. l_inc

    l_inc New Member

    Blog Posts:
    0
    Joined:
    Sep 29, 2005
    Messages:
    2,566
    Clerk
    У Вас талант к усложнению простой задачи. +1 к jaja: простейший инжект dll через CreateRemoteThread без вообще каких-либо наворотов, и хэндлы "с адресным пространством, потоками, системными таблицами и прочим" общие.
     
  13. Partner

    Partner Павел

    Blog Posts:
    0
    Joined:
    Feb 28, 2008
    Messages:
    917
    Location:
    Los Angeles
    RFX
    Нет такого понятия, как объединение процессов. Для слежения за закрытием процессов есть другие методы.
     
  14. mupsy

    mupsy New Member

    Blog Posts:
    0
    Joined:
    Nov 26, 2008
    Messages:
    55
    Я не над твои сообщением смеюсь,а просто подумал что если бы мона было так сказать склеить два процесса в один,то мона склеить и 10 в один=)вот над чем...
     
  15. jaja

    jaja New Member

    Blog Posts:
    0
    Joined:
    Jul 23, 2008
    Messages:
    243
    А не проще ли создать какой-нибудь процесс, который бы проверял существование процесса античита и создавал бы в случае его отсутствия.
     
  16. mupsy

    mupsy New Member

    Blog Posts:
    0
    Joined:
    Nov 26, 2008
    Messages:
    55
    В саму игру вставь поток который отслеживает закрытие процесса античита...Мона сделать как циклом который переодически проеряет на существование процесса античит что то типа такого:
    While(TRUE)
    {
    if(OpenProcess()==NULL)
    TerminateProcess(Процесс игры);
    else
    Sleep(1000);
    }

    либо через WaitForSingleObject и тоже ждать когда произойдет завершение процесса античита,так что не надо будет ломать голову над сокрытием от task manager...
    Ну может конечно я что то тута натупил,но я думаю так=)
     
  17. mupsy

    mupsy New Member

    Blog Posts:
    0
    Joined:
    Nov 26, 2008
    Messages:
    55
    Так тогда закроют этот процесс который проверяет отсутствие античита=))
     
  18. jaja

    jaja New Member

    Blog Posts:
    0
    Joined:
    Jul 23, 2008
    Messages:
    243
    Code (Text):
    1. int _tmain(int argc, _TCHAR* argv[])
    2. {
    3.     STARTUPINFO si;
    4.     PROCESS_INFORMATION pi;
    5.     memset(&si,0,sizeof(si));
    6.     memset(&pi,0,sizeof(pi));
    7.     if(NULL==OpenProcess())
    8.              CreateProcess(античит);
    9.     CreateProcess(argv[0],0,0,0,0,0,0,0,&si,&pi);
    10.     return 0;
    11. }
    И про закрытый античит можно не волноваться
     
  19. punxer

    punxer Андрей

    Blog Posts:
    0
    Joined:
    Oct 16, 2006
    Messages:
    1,327
    Location:
    Ржев
    можно кста античит в dll прилинковать к exe игры. тогда игра без него ещё и запускаццо 'не будеть'. и назвать его dx3d9.dll)
     
  20. RFX

    RFX New Member

    Blog Posts:
    0
    Joined:
    Mar 3, 2009
    Messages:
    4
    а вот как вставить проверку запущен ли античит, в ланчер игры, если он(ланчер) скомпилированый и исходников нет?) Если поставить эту проверку то можно будет и не мучаться)