Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Разбор строки и драйвера  (Прочитано 6297 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
SAnatoly
Гость
« : 05-03-2006 18:25 » 

Здравствуйте. Просветите по поводу разбора строк в драйверах.
Мне надо вытащить имя файла к которому идет обращение (драйвер-фильтр). Набор функций RtlInitUnicodeString беден, а вызовы типа wcsstr(irpSp->FileObject->FileName.Buffer, lockName.Buffer) приводят к синему экрану. Или я не умею пользоваться wcsstr  Улыбаюсь (указатели вроде не NULL, что еще может вызывать сбой ума не приложу).
Записан
SlavaI
Главный специалист

ru
Offline Offline

« Ответ #1 : 05-03-2006 19:41 » 

ты ими умешь пользоваться но не учитываешь одного- в ядре строка, определенная через UNICODE_STRING, не всегда имеет нулевой терминатор, длина определяется полем Length ( в байтах )
« Последнее редактирование: 05-03-2006 19:45 от SlavaI » Записан
SAnatoly
Гость
« Ответ #2 : 06-03-2006 06:54 » 

Спасибо. А как тогда строки разбирать  Не понял. Что-то не хочется свою библиотеку разрабатывать  Быть такого не может. В данном случае я выкрутился. А как вообще такие вещи делают? Или каждый свой велосипед сам изобретает?
Записан
ILIS
Гость
« Ответ #3 : 08-03-2006 08:59 » new

Советую использовать для обработки строк функции RtlStringСch..., RtlStringCb...
Что касается поиска строки в строке лучше написать свою функцию, опять же незабывая, что длина строк в разных вызовах уровня ядра обычно предается дополнительным параметром, надеяться на заканчивающий ноль в строке грозит бсодом
Записан
SAnatoly
Гость
« Ответ #4 : 08-03-2006 10:30 » 

Спасибо. Буду не надеятся на ноль. Улыбаюсь
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines