PROFi: Я таким же образом могу кодогенерилку написать (а-ля JIT), но нафиг надо? :-) Выглядит так: Stream a; a << MOV(rRAX, rImm64(100)); a <<...
Никак, как уже сказали выше. Если хочешь правило (для сборки асм файлов в студии) для ml64, бери правило для ml (Custom Build Rule) и модифицируй...
Permeo, насколько я знаю, LSP (Layered Service Provider) юзает, а не драйвер. А LSP вообще в юзер моде крутится.
SII Спасибо, то что надо.
Кстати, вопрос. Есть разные версии винды. Как определить номер записи в IDT для произвольного аппаратного прерывания? Гугл дал - контроллировать...
А как оно будет жить с разными версиями DLL? Из которых импортируются функции т.е. Правка: посмотрел, для своего кода, ясно.
dermatolog: Я это видел и даже пытался юзать - не ловило оно exception.
В смысле не будет работать под х64? Игры, насколько я знаю, почти все работают и GG успешно работает в х64 тоже.
Загрузить в x64 и сделать так, что бы в твоем процессе дампера API осталось непохуканым. Это потому, что в x64 есть PatchGuard и GG не хукает API.
green: Спасибо! Я данную статью и пропустил. Не думал что unwind влияет на обработку эксепшнов :-\
Это ж где она документирована? Я не нашел, но может плохо искал :-\ Кроме того, почему ж оно не должно вызваться, если я точно знаю что мне надо...
Увы, может быть и будет. Тебе ж надо дергать функции, а они кушают параметры, а не все параметры передаются через регистры :-) Да и в MSDN...
Дык, пофиг: выделял, не выделял - побоку. Если нет nop, то даже в твоем примере exception handler не вызовется. В смысле: ExecuteGuard PROC FRAME...
Я тоже думал. Не придумал :-) Возможно связано с тем, что в эпилоге не всегда делается так: lea rsp, [rbp] или аналогично, а стек восстанавливать...
Имена участников (разделяйте запятой).