bomzzz

Platinum Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору чтоб программа вообще не запустилась. а так и выделяла больше больше... вот тут именно так и советуется, но это любительское мнение, меня бы утроило если бы так было сделано на мсдн http://wasm.ru/print.php?article=drvw2k06 Цитата: Здесь я предполагаю, что между двумя вызовами ZwQuerySystemInformation в системе не появится ни одного нового модуля. Это весьма вероятно, т.к. случается не часто. В учебном примере это простительно, но в коде своего драйвера Вы можете использовать более надежный способ: вызывать ZwQuerySystemInformation в цикле, передавая ей каждый раз буфер большего размера, до тех пор, пока размер буфера не окажется достаточным. | у себя проверил, на 15 процессов требуется - 19776, это если нет имен процессов с длиной MAX PATH (260) можно считать средним значением. под 1.5 кбайта на процесс хватит и с именем 260 байт. можно прибавить 150 кбайт к значению. тогда памяти гарантированно хватит, даже если программа запускает свою копию, а те в свою очередь делают тоже самое (5!=120). но все равно как то некрасиво, лучше было бы поднять статус процесса до реального времени. и все равно как то... хотя скорее всего процессор будет уделять время сначала вновь начавшемуся процессу | Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 03:52 04-12-2011 | Исправлено: bomzzz, 08:41 04-12-2011 |
|