Hi all,
I’m writing a WDM streaming video minidriver. It reads isochronous data
from a proprietary piece of hardware on the IEEE-1394 bus.
However…I would like to be able to make IOCTL calls into my driver from
an application. I have spent almost a whole week on this problem, and I’m
not making much progress.
For a non-PnP driver, I assume that I’d need to call IoCreateDevice() and
IoCreateSymbolicLink(). But what about PnP?
Anyone care to shed some light on this for me before I go completely insane?
Jayalakshmi
HI,
If u can manage to read the book, "programming the Microsoft windows driver model" by walter oney, u can solve the problem..
in pnp driver, u will have to initialise the AddDevice funtion pointer in the driver entry function , the Pnp manager will later call, the adddevice function, and inside it, u create the device object using the IoCreateDevice.
in PnP u can use GUID Device interface to represent the device..
Visit this page to get some sample wdm pci driver...with respect to pnp and your question, i think the sample should give u some better idea..
wdm pci sample V1.4 from
http://www.osr.com/resources_downloads.shtml
regards,
Shiva P
----- Original Message -----
From: Jayalakshmi
To: NT Developers Interest List
Sent: Sunday, March 23, 2003 10:49 AM
Subject: [ntdev] IOCTL use in minidrivers
Hi all,
I'm writing a WDM streaming video minidriver. It reads isochronous data
from a proprietary piece of hardware on the IEEE-1394 bus.
However....I would like to be able to make IOCTL calls into my driver from
an application. I have spent almost a whole week on this problem, and I'm
not making much progress.
For a non-PnP driver, I assume that I'd need to call IoCreateDevice() and
IoCreateSymbolicLink(). But what about PnP?
Anyone care to shed some light on this for me before I go completely insane?
Jayalakshmi
You are currently subscribed to ntdev as: xxxxx@rassit.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
THIS E-MAIL MESSAGE ALONG WITH ANY ATTACHMENTS IS INTENDED ONLY FOR THE ADDRESSEE
and may contain confidential and privileged information. If the reader of this message
is not the intended recipient, you are notified that any dissemination, distribution
or copy of this communication is strictly Prohibited.If you have received this message
by error, please notify the sender immediately, return the original mail to the sender
and delete the message from your system.
THIS E-MAIL MESSAGE ALONG WITH ANY ATTACHMENTS IS INTENDED ONLY FOR THE ADDRESSEE
and may contain confidential and privileged information. If the reader of this message
is not the intended recipient, you are notified that any dissemination, distribution
or copy of this communication is strictly Prohibited.If you have received this message
by error, please notify the sender immediately, return the original mail to the sender
and delete the message from your system.
Stream class calls IoRegisterDeviceInterfaces once per an entry that minidriver specifies in the
list (array) of categories where it wants to show itself up.
It does not call IoCreateSymbolicLink and IIRC it creates unnamed device object.
Look at AmCap sample in Platform SDK to see how to use system device enumerator to find your
driver and talk to it from the user mode.
– Max.
— Jayalakshmi wrote:
> Hi all,
> I’m writing a WDM streaming video minidriver. It reads isochronous data
> from a proprietary piece of hardware on the IEEE-1394 bus.
> However…I would like to be able to make IOCTL calls into my driver from
> an application. I have spent almost a whole week on this problem, and I’m
> not making much progress.
> For a non-PnP driver, I assume that I’d need to call IoCreateDevice() and
> IoCreateSymbolicLink(). But what about PnP?
> Anyone care to shed some light on this for me before I go completely insane?
> Jayalakshmi
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@yahoo.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>
__________________________________________________
Do you Yahoo!?
Yahoo! Platinum - Watch CBS’ NCAA March Madness, live on your desktop!
http://platinum.yahoo.com