Re[3]: VtoolsD Крик души
От: Vovkos Россия https://ioninja.com
Дата: 15.01.02 16:40
Оценка:
ТАВ>При создании VWIN32_CreateRing0Thread, Я его раньше и не создавал VxD виснет... правда не настолько фатально (Без синего экрана).

Виснет потому, что VWIN32_CreateRing0Thread может быть вызвана только "at APPY TIME" (см. DDK Help). Посему запускать поток надо приблизительно так:

inline HANDLE CreateThread(PVOID ThreadProc, PVOID pvContext)
{
    _asm mov ecx, 4096
    _asm mov edx, [pvContext]
    _asm mov ebx, [ThreadProc]
    _asm mov esi, 0
    VxDCall(_VWIN32_CreateRing0Thread)
}

void CreateWriteThreadCallback(DWORD pvContext)
{ 
    CreateThread(ThreadProc, (PVOID)pvContext);
}

// ....
_SHELL_CallAtAppyTime(CreateWriteThreadCallback, (DWORD)pvContext, 0);
// ....


ТАВ>И с другой стороны, Файл Монитор писан на чистых Сях, и я ничего не могу сделать с потоком, как поток залить в файл...


?????

ТАВ> Ладно, это половина беды... Мне на самом деле нужно производить некоректные действия с теми данными которые он прочитал, или собирается писать...


"некоректные" — имеется в виду "некоторые" ?

ТАВ>И еще... У меня есть исходник (sample)в котором сохраняются в файл прямо из обработчика,


Вообще-то очень странно что можно прямо из обработчика... Но если есть рабочий пример, то какие могут возникнуть проблемы?


ТАВ>// Вот здесь кстати встречается этот самый ir_data, но когда я пытаюсь из него что либо попросить, вываливает в файлы всякий мусор.


А что в SoftICE-е по этим адресам видно?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.