Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.01;
Скачать: CL | DM;

Вниз

Есть *.vxd - файл. Как заставить систему видеть *.vxd файл?   Найти похожие ветки 

 
Chieftain   (2003-06-18 18:26) [0]

Дело в том, что на некоторых машинах код:

VxDHandle := CreateFile("\\.\IDE21201.VXD", 0, 0, nil, 0,
FILE_FLAG_DELETE_ON_CLOSE, 0);

if VxDHandle <> INVALID_HANDLE_VALUE then begin
...
end
else begin
WriteLn(SysErrorMessage(GetLastError));
end;

Вызывает ошибку: Системе не удается найти указанный файл

И ваще, что значит "\\.\"?


 
NightAngel   (2003-06-18 21:48) [1]

При этом "\\.\IDE21201.VXD" если открыть VXD удалось, то значит драйвер сидит в памяти. Что происходит: Фактически, после вызова CreateFileA мы попадаем в Kernel32!ORD_0001, эта функция эмулирует VxDCall, она нас приводит к функции vxd-шки VWIN32 под названием _VWIN32_ReleaseWin32Mutex и затем мы получаем список DDB и ищем что задано. Она не грузит vxd, а просто посылает им DIOC_OPEN и DIOC_CLOSEHANDLE сообщения и находит как динамически так и не динамически загруженные VXD .
Вам необходимо, сначала загрузить VXD, а потом уже пытаться получить его HANDLE.


 
NightAngel   (2003-06-18 22:39) [2]

И если Вы пытаетесь загрузить VXD, где он у Вас находиться?


 
Chieftain   (2003-06-19 10:19) [3]

Ваще VxD находится в той же директории, что и exe-файл. Проблема на самом деле в том, что на некоторых компах прога и так прекрасно работает, а на некоторых умудряется не находить VxD-шек, находящихся в Windows\System и Windows\System\Iosubsys. Еще одна неприятность - на тех компах что мне доступны - прога работает, а пользователи находящиеся в других городах жалуются. Как же тут нормально поковыряешся?

Спасибо за ответ, кое что начало проясняться.
Только сразу же возникает вопрос, а как гарантированно можно загрузить VxD? :)



Страницы: 1 вся ветка

Текущий архив: 2003.09.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
1-1463
mOOx_
2003-08-18 15:19
2003.09.01
ReadOnly для CheckBox ов в ListView


14-1631
vano
2003-08-14 12:07
2003.09.01
Как восстановить исходники из exe файла


4-1712
vgb
2003-06-28 14:39
2003.09.01
CreateBitmap(...)


1-1414
Aleksandr
2003-08-15 14:41
2003.09.01
Как освободить спящий поток?


1-1480
m2003
2003-08-17 14:06
2003.09.01
EAccessViolation при создании экзэмляра класса