Dear all,

I wrote a driver A which control my private board.
Now I want to use driver B to control driver A to work something.
(I don't want to merge driver A and B to one.)

Can I do that?
Which function can I find in DDK?
Could you give me some suggestions?
Thanks.

Re: How to call a driver from another one? by Farooque

Farooque
Thu Sep 04 07:07:44 CDT 2003

You can use private IOCTL's for driver to driver
communication. There was an article at OSR on
this. That may help you.

--
-Farooque Khan
http://www.concretioindia.com



"Ted.Lin" <ted.lin@quantatw.com> wrote in message
news:b4abe65e.0309040340.7b230e56@posting.google.com...
> Dear all,
>
> I wrote a driver A which control my private board.
> Now I want to use driver B to control driver A to work something.
> (I don't want to merge driver A and B to one.)
>
> Can I do that?
> Which function can I find in DDK?
> Could you give me some suggestions?
> Thanks.



Re: How to call a driver from another one? by Hornik

Hornik
Thu Sep 04 07:14:28 CDT 2003

how do i get driver A into driver B's device stack, one position lower than
B so i can pass IRPs down or do i not need to have them in the same device
stack? is there a link to that article? thx.

"Farooque Khan" <farooquek-at-concretioindia-dot-com> schrieb im Newsbeitrag
news:eM$iyptcDHA.3708@tk2msftngp13.phx.gbl...
> You can use private IOCTL's for driver to driver
> communication. There was an article at OSR on
> this. That may help you.
>
> --
> -Farooque Khan
> http://www.concretioindia.com
>
>
>
> "Ted.Lin" <ted.lin@quantatw.com> wrote in message
> news:b4abe65e.0309040340.7b230e56@posting.google.com...
> > Dear all,
> >
> > I wrote a driver A which control my private board.
> > Now I want to use driver B to control driver A to work something.
> > (I don't want to merge driver A and B to one.)
> >
> > Can I do that?
> > Which function can I find in DDK?
> > Could you give me some suggestions?
> > Thanks.
>
>



Re: How to call a driver from another one? by Don

Don
Thu Sep 04 07:49:10 CDT 2003

You do not need to place them in the same stack, and in many cases you
should not (Hornik I answered you question on
comp.os.ms-windows.programmer.nt.kernel-mode a couple of days ago).

For the original query look at IoRegisterDeviceInterface for driver A to
export a set of calls, use IoRegisterPlugPlayNotification in driver B to get
to the interface and be able to use it.


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting


"Hornik Valentin (CPR FEC)" <Valentin.Hornik@infineon.com> wrote in message
news:bj7ab6$qcj$1@newssrv.muc.infineon.com...
> how do i get driver A into driver B's device stack, one position lower
than
> B so i can pass IRPs down or do i not need to have them in the same device
> stack? is there a link to that article? thx.
>
> "Farooque Khan" <farooquek-at-concretioindia-dot-com> schrieb im
Newsbeitrag
> news:eM$iyptcDHA.3708@tk2msftngp13.phx.gbl...
> > You can use private IOCTL's for driver to driver
> > communication. There was an article at OSR on
> > this. That may help you.
> >
> > --
> > -Farooque Khan
> > http://www.concretioindia.com
> >
> >
> >
> > "Ted.Lin" <ted.lin@quantatw.com> wrote in message
> > news:b4abe65e.0309040340.7b230e56@posting.google.com...
> > > Dear all,
> > >
> > > I wrote a driver A which control my private board.
> > > Now I want to use driver B to control driver A to work something.
> > > (I don't want to merge driver A and B to one.)
> > >
> > > Can I do that?
> > > Which function can I find in DDK?
> > > Could you give me some suggestions?
> > > Thanks.
> >
> >
>
>



Re: How to call a driver from another one? by Peter

Peter
Thu Sep 04 08:49:42 CDT 2003


"Hornik Valentin (CPR FEC)" <Valentin.Hornik@infineon.com> wrote in message
news:bj7ab6$qcj$1@newssrv.muc.infineon.com...
> how do i get driver A into driver B's device stack, one position lower
than
> B so i can pass IRPs down or do i not need to have them in the same device
> stack? is there a link to that article? thx.
>

Dude, READ THE ARTICLE to which the previous poster referred you:
http://www.osronline.com/article.cfm?id=24

It's from The NT Insider, so you'll have to subscribe (if you don't already,
it's totally free) -- But this'll send you off in the right direction.

Peter
OSR
http://www.osronline.com



Re: How to call a driver from another one? by Hornik

Hornik
Thu Sep 04 08:40:09 CDT 2003

don burn, i know that you already answered my question, thank you!
i was just trying to get as much info as possible. do i have to change
anything in my .inf file?

"Don Burn" <burn@acm.org> schrieb im Newsbeitrag
news:vled9m3bekbm7f@corp.supernews.com...
> You do not need to place them in the same stack, and in many cases you
> should not (Hornik I answered you question on
> comp.os.ms-windows.programmer.nt.kernel-mode a couple of days ago).
>
> For the original query look at IoRegisterDeviceInterface for driver A to
> export a set of calls, use IoRegisterPlugPlayNotification in driver B to
get
> to the interface and be able to use it.
>
>
> Don Burn (MVP, Windows DDK)
> Windows 2k/XP/2k3 Filesystem and Driver Consulting
>
>
> "Hornik Valentin (CPR FEC)" <Valentin.Hornik@infineon.com> wrote in
message
> news:bj7ab6$qcj$1@newssrv.muc.infineon.com...
> > how do i get driver A into driver B's device stack, one position lower
> than
> > B so i can pass IRPs down or do i not need to have them in the same
device
> > stack? is there a link to that article? thx.
> >
> > "Farooque Khan" <farooquek-at-concretioindia-dot-com> schrieb im
> Newsbeitrag
> > news:eM$iyptcDHA.3708@tk2msftngp13.phx.gbl...
> > > You can use private IOCTL's for driver to driver
> > > communication. There was an article at OSR on
> > > this. That may help you.
> > >
> > > --
> > > -Farooque Khan
> > > http://www.concretioindia.com
> > >
> > >
> > >
> > > "Ted.Lin" <ted.lin@quantatw.com> wrote in message
> > > news:b4abe65e.0309040340.7b230e56@posting.google.com...
> > > > Dear all,
> > > >
> > > > I wrote a driver A which control my private board.
> > > > Now I want to use driver B to control driver A to work something.
> > > > (I don't want to merge driver A and B to one.)
> > > >
> > > > Can I do that?
> > > > Which function can I find in DDK?
> > > > Could you give me some suggestions?
> > > > Thanks.
> > >
> > >
> >
> >
>
>



Re: How to call a driver from another one? by ted

ted
Thu Sep 04 20:29:04 CDT 2003

Dear all,
That is I want to know.
I will study DDK and try it.
Thanks.


"Gary G. Little" <gary.g.little.nospam@seagate.com> wrote in message news:<VqG5b.1211$NF.786@newssvr24.news.prodigy.com>...
> In the DDK documentation look for IoGetDeviceObjectPointer and/or
> IoAttachDevice. There are several ways. You can create a registered private
> interface, define IOCTLs, create an import library. Lots of ways.
> Do be aware that when two drivers attach, you open a whole new set of
> synchronization problems with respect to handling IRPs.
>
> --
> Gary G. Little
> Seagate Technologies, LLC
>
> "Ted.Lin" <ted.lin@quantatw.com> wrote in message
> news:b4abe65e.0309040340.7b230e56@posting.google.com...
> > Dear all,
> >
> > I wrote a driver A which control my private board.
> > Now I want to use driver B to control driver A to work something.
> > (I don't want to merge driver A and B to one.)
> >
> > Can I do that?
> > Which function can I find in DDK?
> > Could you give me some suggestions?
> > Thanks.

Re: How to call a driver from another one? by ted

ted
Thu Sep 04 20:39:00 CDT 2003

If the two drivers are a WDM driver and a miniport driver.
Can I call miniport driver in my new WDM driver?
Can I use the same method?
Thanks.


"Gary G. Little" <gary.g.little.nospam@seagate.com> wrote in message news:<VqG5b.1211$NF.786@newssvr24.news.prodigy.com>...
> In the DDK documentation look for IoGetDeviceObjectPointer and/or
> IoAttachDevice. There are several ways. You can create a registered private
> interface, define IOCTLs, create an import library. Lots of ways.
> Do be aware that when two drivers attach, you open a whole new set of
> synchronization problems with respect to handling IRPs.
>
> --
> Gary G. Little
> Seagate Technologies, LLC
>
> "Ted.Lin" <ted.lin@quantatw.com> wrote in message
> news:b4abe65e.0309040340.7b230e56@posting.google.com...
> > Dear all,
> >
> > I wrote a driver A which control my private board.
> > Now I want to use driver B to control driver A to work something.
> > (I don't want to merge driver A and B to one.)
> >
> > Can I do that?
> > Which function can I find in DDK?
> > Could you give me some suggestions?
> > Thanks.