Сейчас на форуме: Rio, ==DJ==[ZLO], Dart Raiden, Alf (+6 невидимых)

 eXeL@B —› Основной форум —› Проблема с записью в реестр из таймера
Посл.ответ Сообщение

Ранг: 0.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 сентября 2004 00:55
· Личное сообщение · #1

Тут вот проблемка вышла... Пишу значит драйвер.
Запускаю таймер парой IoInitializeTime/IoStartTimer
Далее хочу из него записать в реестр но это не возможно так как процедура таймера вызвана не из пассив левала
Так вот вобщем то и вопрос... как мне спустится до пассив или какой аналог использовать?



Ранг: 40.0 (посетитель), 1thx
Активность: 0.030
Статус: Участник

Создано: 09 сентября 2004 06:07
· Личное сообщение · #2

Есть функция:

VOID
KeRaiseIrql(
IN KIRQL NewIrql,
OUT PKIRQL OldIrql
);

Parameters
NewIrql - Specifies the new IRQL to which the hardware priority is to be raised.
OldIrql - Pointer to the storage for the original (unraised) IRQL value to be used in a subsequent call to KeLowerIrql.

Может с ней будет работать. После этого надо вызывать KeLowerIrql.



Ранг: 203.3 (наставник)
Активность: 0.220
Статус: Участник
UPX Killer -d

Создано: 09 сентября 2004 07:42
· Личное сообщение · #3

dragon, я так понял, что это текст из DDK. Ссылку можно?

-----
Я медленно снимаю с неё UPX... *FF_User*




Ранг: 0.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 сентября 2004 09:57 · Поправил: RU_Ban0K
· Личное сообщение · #4

dragon
А вот и нет... до этого я сам додумался... и фак.. всё виснет...
Эта натишка только для повышения IRQL, для понижения другая... но вот проблема... они всегда в паре и всегда сначала нужно повышать потом понижать... в других случаях у меня всё в BSOD уходит...

invoke KeGetCurrentIrql
mov [Irql],eax
invoke KeLowerIrql,0

Invoke ZwOpenKey, hKey, KEY_SET_VALUE, oa
invoke ZwSetValueKey, [hKey], ValueName, 0, REG_SZ, StringData, 24
invoke ZwClose, [hKey]
invoke KeRaiseIrql,[Irql],non_use

(этот код не пашет!)

Как только не манипулировал... и решил замутить с тредом который вызывает KeDelayExecutionTread

AlexZ
Хмм... на мелкософте... ~180 гдет метров...



Ранг: 0.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 сентября 2004 11:44
· Личное сообщение · #5

О... всё пашет... =)



Ранг: 40.0 (посетитель), 1thx
Активность: 0.030
Статус: Участник

Создано: 09 сентября 2004 12:08 · Поправил: dragon
· Личное сообщение · #6

XP DDK http://shelek.tmf.ru/archive/ddk/DDK_XP.ISO

RU_Ban0K
Как сделал, через тред или так?



Ранг: 0.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 сентября 2004 13:38
· Личное сообщение · #7

Через тред и делэй.
Нормально вроде пашет...
Вот ещё вопрос на счёт изменений прав доступа к объекту остался... хмм... надо будет там покапать...


 eXeL@B —› Основной форум —› Проблема с записью в реестр из таймера
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати