Windows 7 Driver doesn't get system code (IOCTL)

smithana

New Member
Joined
Jun 24, 2011
Messages
4
Hi,
I'm newbie, so it's maybe stupid question)

So, I've got raid controller, wdf driver and application. It worked on Windows XP and Server 2003.
On Windows 7 it doesn't work(.
System function (like ::DeviceIoControl) began to return FALSE.
I think that this function work with DIRECT I/O. The last version is 4.4, it doesn't work with Vista, so 7 I think too, am I right? If yes, then tell me please how can I send system code to driver?

p.s.
Also I got the mistake code by ::GetLastError().


if(dw = GetLastError()){ printf("%d -857\n", dw); getch();


So I can see in Console Application 317-857.
Can it be ERROR_MR_MID_NOT_FOUND? Is it because of Windows 7, too?
Thanks)
 


Realized that I was on the wrong way of solution the problem.
It's not because of Direct I/O.

In application I've got line, that shows me info about raid controller.
It's raid's number, pci slot, firmware and so on. It shows me right only first - raid's number. Everything else it shows wrong, like - ? or unknown.

So I think that the first time I call OpenDevice() to read raid's number, OS allows me to open device. Then I call CloseDevice().
Every time else when I try to open device to read something, OS doesn't allow access to me.
Can you explain me why, and how make OS allow access for many times?

Thnx
 


Back
Top