Delphi , VXD, DeviceIoControl ?

5 отговора 143 прегледа
#1

Delphi , VXD, DeviceIoControl ?

Imam slednia problem:
opitvam se pod win98 da polzvam ide21201.vxd drivera
pravq slednoto:
VxDHandle := CreateFile('IDE21201.VXD',0,0,nil,OPEN_EXISTING,0,0);
tuka vsichko e OK
1. (neznam zashto VxDHandle := CreateFile ('IDE21201.VXD', 0, 0, 0, 0, FILE_FLAG_DELETE_ON_CLOSE, 0); mi vrashta INVALID_HANDLE, kato sashtia kod raboti v CBuilder, no mislq che tova ne e osnovnia problem)

2. sled tova pravq taka:
status := DeviceIoControl (VxDHandle, m_cVxDFunctionIdesDInfo,
nil, 0, pOutBufVxD, sizeof(PIdeDInfo), lpBytesReturned, nil);

kadeto m_cVxDFunctionIdesDInfo = 1

resultata e INVALID_PARAMETER (error code 87)

interesnoto e, che v CBuilder vsichko si varvi.
da ne e svarzano sas samija VXD driver i tova , kak sa declarirani funkciite mu (ot delphi da ne mogat da se izvikat li , shto li ?

nqkoj moje li da pomogne ?

Щом не върви от първия път, значи има шанс
Отговор
в отговор на LongJohn #2

Re: Delphi , VXD, DeviceIoControl ?

Не мога да ти помогна много - но огледай внимателно типа на параметрите - тези win функции - са много капризни - и най - вероятно нещо не е указател или пък е като не трябва да бъде

Ако можеш сравни данните - които подаваш - в двете среди.

---
Е т'ва е живот!
Отговор
в отговор на LongJohn #3

Re: Delphi , VXD, DeviceIoControl ?

Opening the VxD
You can open a static or dynamically loadable VxD by specifying the module name, filename, or registry entry identifying the VxD in a call to the CreateFile function. If the VxD exists and it supports the device IOCTL interface, the function returns a device handle that you can use in subsequent calls to the DeviceIoControl function. Otherwise, the function fails and sets the last error value to ERROR_NOT_SUPPORTED or ERROR_FILE_NOT_FOUND. You can use the GetLastError function to retrieve the error value.

When you open a VxD, you must specify a name having the following form.

\\.\VxdName

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на SDR #4

e da, no ...

sluchaja ne e takav

Отговор
в отговор на LongJohn #5

kakaf e sluchaq?

oprosto se opitwah da ti kaja che kakto ti go prawish ne poluchawash hendal na ustrojstwoto a hendal kam fajla s drajwera kojto si e kato wseki drug fajl i devio se predawa kam drivcera na FS-a

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на SDR #6

Re: kakaf e sluchaq?

da , taka e ,
no bi trqbvalo i tova da varshi rabota (a to javno varshi , ama napisano na C Builder - i taka i shte go polzvam).
no prosto se chudeh kade moje da e problema s Delphi.

za sajalenie ne otkrih nikakvo nesaotvetstvie v tipovete kakto kaza PhantomAS.
kakto i da e.

Щом не върви от първия път, значи има шанс
Отговор