А как сделать что бы тренер ждал пока запустится процесс?
Например я сделал checkBox, поставил галочку и что бы тренер ждал пока запуститься процесс и потом внес изменение
тут нужно в winApi лезть, что делать в C# все равно что штаны через голову надевать...
а если вообще - winApi функция FindWindow если окна нету возвратит ошибочное значение =>
импортирует либу user32.dll и описывает находяшуюся в ней функцию FindWindow, в идеале там типы другие но в C# их нет, обойдемся аналогами - IntPtr вместо HWND и string вместо LPCSTR...
в функции прописываешь 1 аргумент ""=пустой, второй- "имяПроцесса" (1 аргумент- тип окна может быть к примеру D3D Window, второй- имя процесса)
как юзать:
создаешь переменную (в идеале типа HWND но в C# е нету - аналог IntPtr)
Код:
IntPtr wnd;
wnd = FindWindow("", "windowName");
//теперь проверяем есть ли процесс
if(wnd)
{
//код Hook'а
}
все это помещаешь в таймер и ставишь интервал эдак 100мсек (раза 4 в секунду)
//возможно есть и лучше варианты рассказал что знаю....
//все это если что надо помещать к примеру в обработчике change чекБокса
________________ небойся делать то чего неумеешь-ковчег построил любитель... профи сотворили титаник
Последний раз редактировалось VolniyStalker; 01.02.2011 в 20:51.
Причина: криво написано...впрочем немного поменял /facepalm
А можете написать гайд?
"как создавать трейнер для DMA игр....очень нужно)
во первых вариант создать цикл в котором адрес будет увеличиваться на 1 и по этому адресу будет читаться буффер, далее буффер сравнивается с искомым значением и если значения совпали то добавить скажем адрес в массив и копать дальше пока адрес не достигнет максимального установленного тобой значения... потом создать цикл который будет менять по адрессам из массива значения на нужные тебе....
___
плюс в DMA играх должны быть указатели адреса которых всегда одинаковы, или указатели на указатели и тд. Т.е. надо прочитать этот указатель, прочитать адрес, на который ссылается указатель, проверить значение заменить значение
___
если что не так говорю - строго не суди
________________ небойся делать то чего неумеешь-ковчег построил любитель... профи сотворили титаник
Большего гона я еще не видел. Я встречал самые безумные идеи куда пытались присобачить C#, но писать на Managed языке софт который будет управлять UnManaged Memory и писать туда это полный бред. И если уж нато пошло то адресация в памяти меняется не от платформе к платформе, а от запуска к запуску. Основная задача тренера не записать в память, а по косвенным признакам точно определить в какое место в памяти писать. А реклама библиотеки обертки поверх неуправляемого кода это не гайд по тому как сделать свой тренер это просто не самая удачная попытка порисоваться. Все нужно делать теми инструментами которые для этого предназначены.