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

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: numega проблема компиляции библиотеки vdw_wdm.lib  (Прочитано 13863 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
sergey sv
Гость
« : 18-06-2007 13:20 » 

уважаемые программисты,помогите разобраться
Проблема с Numega2.6 нужно сделать драйвер для usb, с помощью мастера собираю,появляется папка с исходниками запускаю winddk free указываю путь, билд, появляется ошибка что нет библиотеки vdm_wdm.lib полазил по сети почитал и понял что эта бблиотека поставляется в исходном коде вместе c Numega, в деректории
F:\Program Files\NuMega\SoftICE Driver Suite\DriverWorks\source
а компилируется при первой компиляции или с помощью командной строки у меня она не компилируется, правда я пробовал компилировать с
помощью vs net вместо vs c++ появляется куча ошибок.
С помощь командной строки ошибки, что, не заданы переменные(BASEDIR) , хотя build ddk settings все деректории заданы ,кроме vs c++ у меня vs net, когда указываю путь до   F:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\devenv.exe жму кнопу  create shortcut now появляется сообщение что все ок ,но когда запучкаю снова этого пути уже там нет. может конечно numega работает только с VS c++?
в общем не знаю как поступить , может у кого есть откомпилированная vdm_wdm.lib кинте в меня. Или может что посоветуете
Драйверами раньше я не занимался ,прочитал книги Агурова про uSB но что то все равно информации маловато нужно почитать что то еще
по Numega или DDK. если у кого есть какие ссылки поделитесь буду очень благодарен.
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 18-06-2007 13:47 » 

1. скачать нумегу 3.2 помоему. в сети полно. (просто не помню уже, есть в 2.6-й такая "кнопка". может и есть...)
2. запустить VS 6.0 или VS 2003, запустить из под него визард нумеги и выбрать "С DriverWizard Project"!!! СИ, а не DriverWorks! голый, так его, СИ!
3. наслаждаться результатом.
3. и НИКАДА больше не использовать сторонние библиотеки при написании драйверов) мой вам искренний совет.

PS книжка... есть офигенная новая книжка по написанию драйверов, Вальтера Они. есть в продаже на русском и есть англ. вариант выложенный в разделе файлы. обсуждалось несколько тем назад.
« Последнее редактирование: 18-06-2007 13:50 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
sergey sv
Гость
« Ответ #2 : 18-06-2007 16:36 » 

Благадарю, книги сейчас скачиваю буду читать.
Записан
sergey sv
Гость
« Ответ #3 : 20-06-2007 07:23 » 

Привет.
Вот блин какоето невезение, скачал numega3.2 а к нему нужет ddk2003. С моим работать не хотит нужна библ ntstrsafe.lib. Жаль
Может знаете где можно качнуть?
Записан
sergey sv
Гость
« Ответ #4 : 20-06-2007 08:00 » 

все сам нашел только размер аш 250м если через модем качать , то почти сутки  Жаль
 
http://www.microsoft.com/whdc/DevTools/ddk/default.mspx#
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 20-06-2007 08:35 » 

Этот файл есть не только в DDK 3790.1830 . он есть так же в DDK 2600.1106
вы должны в настройках проекта указать пути для:
компилятора(заголовочные файлы)
$(BASEDIR_XP2600)\inc\wxp,$(BASEDIR_XP2600)\inc\crt,$(BASEDIR_XP2600)\inc\ddk\wxp,$(BASEDIR_XP2600)\inc\ddk\wdm\wxp

и линкера
$(BASEDIR_XP2600)\lib\wxp\i386
в линкере указать дополнительные либы ntoskrnl.lib hal.lib wmilib.lib ntstrsafe.lib $(NOINHERIT)
может еще что потребуется...

BASEDIR_XP2600 - путь к DDK, я обычно обяъявляю его как глобальную переменную системы. через SET

это если все для XP.

для 2000 пути
 $(BASEDIR_XP2600)\inc\w2k,$(BASEDIR_XP2600)\inc\crt,$(BASEDIR_XP2600)\inc\ddk\w2k,$(BASEDIR_XP2600)\inc\ddk\wdm\w2k
и
$(BASEDIR_XP2600)\lib\w2k\i386
соответственно

PPS еще настройки посмотрите. Tools->DS->DDK Build Setting.
« Последнее редактирование: 20-06-2007 08:44 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
sergey sv
Гость
« Ответ #6 : 20-06-2007 09:24 » 

вроде бы все правильно настроено, либы все которые вы перечислели есть ,расположены F:\WINDDK\2600\lib\wxp\i386
нету только либы ntstrsafe.lib.
Может она както компилируется как vdm_wdm.lib
Записан
sergey sv
Гость
« Ответ #7 : 20-06-2007 10:26 » new

вот сдесь на макрософте что то пишут по этому поводу, я прада не совсем понял.
http://www.microsoft.com/whdc/Driver/tips/SafeString.mspx
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #8 : 20-06-2007 13:33 » 

нет. vdm_wdm.lib  - либа функций классов DriverWorks.

ntstrsafe.lib находится в папках:
C:\DDK\XP2600.1106\lib\w2k\i386\ntstrsafe.lib
C:\DDK\XP2600.1106\lib\wxp\i386\ntstrsafe.lib
C:\DDK\XP2600.1106\lib\wxp\ia64\ntstrsafe.lib
у вас какая версия DDK стоит вообще?
помоему даже отсюда https://club.shelek.ru/download.php?id=5 подойдет.

PS вообще в этой либе функции безопасной работы со строковыми переменными. аналоги СИ-шных strcat, strcpy. последние просто не рекомендуют использовать в драйверах - там не вся специфика учитывается. на майкрософте как раз об этом говорят...

а вообще помню я тоже в свое время на эти грабли наступал. помоему все кончилось тем что DDK обновить пришлось)
« Последнее редактирование: 20-06-2007 13:45 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #9 : 20-06-2007 13:49 » 

а вообще... тут есть такая кнопка поиск... мощная весчь я вам доложу)
поищите по "ntstrsafe.lib"
например на
https://forum.shelek.ru/index.php/topic,8661.msg127809.html#msg127809
наткнетесь)

PS и еще извиняйте. у меня оказывается до сих по DS 3.1 стоит. а не 3.2....)
« Последнее редактирование: 20-06-2007 13:51 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
sergey sv
Гость
« Ответ #10 : 20-06-2007 14:07 » 

>у вас какая версия DDK стоит вообще?
У меня 2001.  Не буду больше наверно эксперементировать, качну  Windows Server 2003 SP1 DDK он вроде поновей.   Улыбаюсь
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 21-06-2007 07:29 » 

2001... эт наверное не версия а год издания) кто ж его упомнит то) в любом случае - старая уже)
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines