Процесс виснет моментально, после "чтения"? Обычно такое происходит, когда нарушаешь целостность стека. Скинь хотя бы свой код шарповый. Эксперты, если тут они есть, подскажут. Может ты вовсе его и не читаешь..
Процесс зависает через 10-20 минут. После интенсивного чтения (читаю примерно каждые 20-50 мс одни и те же адреса).
Читаю я точно - сверял значения cheat engine и в моей проге.
Как только отключаю бота(чтение из памяти) клиент тут же отвисает(если не надолго завис) и работает нормально пока я заново не включу бота....
Код скину чуть позже - как до компа доберусь. Вас интерисуют операции чтения? Весь код выкладывать думаю бессмысленно..
Процесс зависает через 10-20 минут. После интенсивного чтения (читаю примерно каждые 20-50 мс одни и те же адреса).
Читаю я точно - сверял значения cheat engine и в моей проге.
Как только отключаю бота(чтение из памяти) клиент тут же отвисает(если не надолго завис) и работает нормально пока я заново не включу бота....
Код скину чуть позже - как до компа доберусь. Вас интерисуют операции чтения? Весь код выкладывать думаю бессмысленно..
Подожди ка. У тебя подвисает процесс после переключения в него? Или вообще постоянно?
Если постоянно подвисает - убедись, что ты адекватно вызываешь чтение из памяти процесса.
Поясню: "цена" тысячи вызовов ReadProcessMemory по 4 байта (сисколла, ему соответствующего, ты это все равно делаешь) на пару порядков выше, чем 1 вызов на 4к байт.
+ Не читай того, что тебе не нужно "прямо сейчас"
P.S. у меня проблема с подвисаниями при альттабе даже когда ничего не читаю и вообще ни CE, студия, ни дебаггер, ничего не открыто...
Подожди ка. У тебя подвисает процесс после переключения в него? Или вообще постоянно?
Если постоянно подвисает - убедись, что ты адекватно вызываешь чтение из памяти процесса.
Поясню: "цена" тысячи вызовов ReadProcessMemory по 4 байта (сисколла, ему соответствующего, ты это все равно делаешь) на пару порядков выше, чем 1 вызов на 4к байт.
+ Не читай того, что тебе не нужно "прямо сейчас"
P.S. у меня проблема с подвисаниями при альттабе даже когда ничего не читаю и вообще ни CE, студия, ни дебаггер, ничего не открыто...
Процесс зависает через 10-20 минут. После интенсивного чтения (читаю примерно каждые 20-50 мс одни и те же адреса).
Читаю я точно - сверял значения cheat engine и в моей проге.
Как только отключаю бота(чтение из памяти) клиент тут же отвисает(если не надолго завис) и работает нормально пока я заново не включу бота....
Код скину чуть позже - как до компа доберусь. Вас интерисуют операции чтения? Весь код выкладывать думаю бессмысленно..
Я перефразирую свой пост "Если тут есть эксперты по шарпу, то возможно они укажут на твою ошибку". Я никак не отношусь к таким людям.
В остальных случаях остается только гадать. Потому что от одного только чтения нельзя повиснуть, права Read есть на все секции, другое дело если ты через определенный промежуток времени пытаешься что либо записать
Добавлено через 3 минуты
хотя есть еще такое подозрение , что ты хендл перед каждым чтением открываешь
Последний раз редактировалось Dino; 07.04.2015 в 15:06.
Причина: Добавлено сообщение
Я перефразирую свой пост "Если тут есть эксперты по шарпу, то возможно они укажут на твою ошибку". Я никак не отношусь к таким людям.
В остальных случаях остается только гадать. Потому что от одного только чтения нельзя повиснуть, права Read есть на все секции, другое дело если ты через определенный промежуток времени пытаешься что либо записать
Добавлено через 3 минуты
хотя есть еще такое подозрение , что ты хендл перед каждым чтением открываешь
Про хендл вы не правы , он открывается один раз на окно т.е. для пяти ботов в пяти окнах - пять хендлов
Подожди ка. У тебя подвисает процесс после переключения в него? Или вообще постоянно?
Если постоянно подвисает - убедись, что ты адекватно вызываешь чтение из памяти процесса.
Поясню: "цена" тысячи вызовов ReadProcessMemory по 4 байта (сисколла, ему соответствующего, ты это все равно делаешь) на пару порядков выше, чем 1 вызов на 4к байт.
+ Не читай того, что тебе не нужно "прямо сейчас"
P.S. у меня проблема с подвисаниями при альттабе даже когда ничего не читаю и вообще ни CE, студия, ни дебаггер, ничего не открыто...
Что значит адекватно?
Я читаю постоянно всего 2 по 4 байта - флаг наличия в таргете ресурса и флаг сбора.
Остальные флаги дергаю крайне редко.
Процесс зависает не сразу, а через некоторое время, причем чем больше окон бота тем быстрее зависает. При 1-2 окнах он не зависает.
Что значит адекватно?
Я читаю постоянно всего 2 по 4 байта - флаг наличия в таргете ресурса и флаг сбора.
Остальные флаги дергаю крайне редко.
Процесс зависает не сразу, а через некоторое время, причем чем больше окон бота тем быстрее зависает. При 1-2 окнах он не зависает.
Хм.. если так мало читаешь, то да, ничего не должно происходить страшного...
Есть вариант, что GarbageCollector подвисает (где-то что-то неправильно или ты с памятью делаешь, или тот фреймворк, через который читаешь)
+ Если у тебя в разных тредах чтение происходит, то точно никаких дедлоков не возникает?