Главная страница
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.015 c
1-1416
MakNik
2003-08-19 12:59
2003.09.01
как узнать папку из которой запущена программа?


4-1711
DemonLord
2003-07-01 16:14
2003.09.01
Как нарисовать +/- в дереве


14-1660
kaif
2003-08-12 14:57
2003.09.01
Вирус в HTML ?


3-1280
Fantasy
2003-08-09 05:34
2003.09.01
Есть ли в SQL втроеная переменная реального даты и времени


1-1364
SIW
2003-08-17 19:37
2003.09.01
Работа с TStringList