Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?

Posted: 08-24-2004, 06:53 AM
Hi all,

I am trying to add some lines to the MSDDK mirror driver sample in enable.c.

I want to add the lines that call the original ATI driver's DrvEnablePDEV in
the mirror driver DrvEnablePDEV function.

Now for some ATI display driver, I can check the hardware device manager to
see there is only one ATI "DLL" file, so I can know that I will use
EngLoadImage in the mirror driver's DrvEnablePDEV function to call the
original ATI one.

But when I run it on another PC and try to use

EngLoadImage("ATIXXX.DLL")

I found in the hardware device manager there are 10s of ATIXXX.dll files,
how do I know which one is the correct one to load in order to find the
original DrvEnablePDEV?

I have tried dumpbin.exe in VC\BIN\ directory,

I did the following:

dumpbin /exports ati*.dll

But I did see no "DrvEnablePDEV at all.

What's the problem? Which one of the following files contains the
DrvEnablePDEV?

Thanks a lot,

-Lucy

-----------------------------------------------

08/03/2004 09:18 PM 233,472 ati2cqag.dll
08/03/2004 09:37 PM 208,896 ati2dvag.dll
08/03/2004 09:35 PM 30,720 ati2edxx.dll
08/03/2004 09:35 PM 86,016 ati2evxx.dll
05/25/2004 09:02 PM 870,784 ati3d1ag.dll
05/25/2004 09:06 PM 1,057,760 ati3d2ag.dll
08/03/2004 09:34 PM 2,177,184 ati3duag.dll
08/03/2004 09:34 PM 81,920 ATIDDC.DLL
08/03/2004 10:12 PM 135,168 ATIDEMGR.dll
08/03/2004 10:25 PM 294,912 atiiiexx.dll
08/03/2004 09:55 PM 6,451,200 atioglxx.dll
08/03/2004 09:35 PM 118,784 atipdlxx.dll
08/03/2004 09:20 PM 17,408 atitvo32.dll
11/09/2001 09:01 AM 24,064 ativcoxx.dll
08/03/2004 09:23 PM 484,128 ativvaxx.dll



Reply With Quote

Responses to "Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?"

lucy
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-24-2004, 08:08 AM

"lucy" <losemind@yahoo.com> wrote in message
news:ON$s76ZiEHA.1376@TK2MSFTNGP11.phx.gbl...
> Hi all,
>
> I am trying to add some lines to the MSDDK mirror driver sample in
enable.c.
>
> I want to add the lines that call the original ATI driver's DrvEnablePDEV
in
> the mirror driver DrvEnablePDEV function.
>
> Now for some ATI display driver, I can check the hardware device manager
to
> see there is only one ATI "DLL" file, so I can know that I will use
> EngLoadImage in the mirror driver's DrvEnablePDEV function to call the
> original ATI one.
>
> But when I run it on another PC and try to use
>
> EngLoadImage("ATIXXX.DLL")
>
> I found in the hardware device manager there are 10s of ATIXXX.dll files,
> how do I know which one is the correct one to load in order to find the
> original DrvEnablePDEV?
>
> I have tried dumpbin.exe in VC\BIN\ directory,
>
> I did the following:
>
> dumpbin /exports ati*.dll
>
> But I did see no "DrvEnablePDEV at all.
>
> What's the problem? Which one of the following files contains the
> DrvEnablePDEV?
>
> Thanks a lot,
>
> -Lucy
>
> -----------------------------------------------
>
> 08/03/2004 09:18 PM 233,472 ati2cqag.dll
> 08/03/2004 09:37 PM 208,896 ati2dvag.dll
> 08/03/2004 09:35 PM 30,720 ati2edxx.dll
> 08/03/2004 09:35 PM 86,016 ati2evxx.dll
> 05/25/2004 09:02 PM 870,784 ati3d1ag.dll
> 05/25/2004 09:06 PM 1,057,760 ati3d2ag.dll
> 08/03/2004 09:34 PM 2,177,184 ati3duag.dll
> 08/03/2004 09:34 PM 81,920 ATIDDC.DLL
> 08/03/2004 10:12 PM 135,168 ATIDEMGR.dll
> 08/03/2004 10:25 PM 294,912 atiiiexx.dll
> 08/03/2004 09:55 PM 6,451,200 atioglxx.dll
> 08/03/2004 09:35 PM 118,784 atipdlxx.dll
> 08/03/2004 09:20 PM 17,408 atitvo32.dll
> 11/09/2001 09:01 AM 24,064 ativcoxx.dll
> 08/03/2004 09:23 PM 484,128 ativvaxx.dll
>
>
>

Very strange! There is no DrvEnablePDEV in the ATI drivers? I tried every
means and did not find the DLL that contains the DrvEnablePDEV...


Reply With Quote
vipin
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-24-2004, 09:18 AM
DrvEnablePdev isn't the driver dll exported function, function pointer is
filled in the DRVENABLEDATA parameter
when DrvEnableDriver is called.

thanks
vipin

"lucy" <losemind@yahoo.com> wrote in message
news:#7es5kaiEHA.2848@TK2MSFTNGP10.phx.gbl...
>
> "lucy" <losemind@yahoo.com> wrote in message
> news:ON$s76ZiEHA.1376@TK2MSFTNGP11.phx.gbl...
> > Hi all,
> >
> > I am trying to add some lines to the MSDDK mirror driver sample in
> enable.c.
> >
> > I want to add the lines that call the original ATI driver's
DrvEnablePDEV
> in
> > the mirror driver DrvEnablePDEV function.
> >
> > Now for some ATI display driver, I can check the hardware device manager
> to
> > see there is only one ATI "DLL" file, so I can know that I will use
> > EngLoadImage in the mirror driver's DrvEnablePDEV function to call the
> > original ATI one.
> >
> > But when I run it on another PC and try to use
> >
> > EngLoadImage("ATIXXX.DLL")
> >
> > I found in the hardware device manager there are 10s of ATIXXX.dll
files,
> > how do I know which one is the correct one to load in order to find the
> > original DrvEnablePDEV?
> >
> > I have tried dumpbin.exe in VC\BIN\ directory,
> >
> > I did the following:
> >
> > dumpbin /exports ati*.dll
> >
> > But I did see no "DrvEnablePDEV at all.
> >
> > What's the problem? Which one of the following files contains the
> > DrvEnablePDEV?
> >
> > Thanks a lot,
> >
> > -Lucy
> >
> > -----------------------------------------------
> >
> > 08/03/2004 09:18 PM 233,472 ati2cqag.dll
> > 08/03/2004 09:37 PM 208,896 ati2dvag.dll
> > 08/03/2004 09:35 PM 30,720 ati2edxx.dll
> > 08/03/2004 09:35 PM 86,016 ati2evxx.dll
> > 05/25/2004 09:02 PM 870,784 ati3d1ag.dll
> > 05/25/2004 09:06 PM 1,057,760 ati3d2ag.dll
> > 08/03/2004 09:34 PM 2,177,184 ati3duag.dll
> > 08/03/2004 09:34 PM 81,920 ATIDDC.DLL
> > 08/03/2004 10:12 PM 135,168 ATIDEMGR.dll
> > 08/03/2004 10:25 PM 294,912 atiiiexx.dll
> > 08/03/2004 09:55 PM 6,451,200 atioglxx.dll
> > 08/03/2004 09:35 PM 118,784 atipdlxx.dll
> > 08/03/2004 09:20 PM 17,408 atitvo32.dll
> > 11/09/2001 09:01 AM 24,064 ativcoxx.dll
> > 08/03/2004 09:23 PM 484,128 ativvaxx.dll
> >
> >
> >
>
>
> Very strange! There is no DrvEnablePDEV in the ATI drivers? I tried every
> means and did not find the DLL that contains the DrvEnablePDEV...
>
>

Reply With Quote
Calvin Guan
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-24-2004, 02:15 PM
Vipin is right.

Lucy, the Display driver you are looking for is ati2dvag.dll.

good luck,
Calvin

"vipin" <vipin@nospam.com> wrote in message
news:%230rjaFbiEHA.712@TK2MSFTNGP09.phx.gbl...
> DrvEnablePdev isn't the driver dll exported function, function pointer is
> filled in the DRVENABLEDATA parameter
> when DrvEnableDriver is called.
>
> thanks
> vipin
>
> "lucy" <losemind@yahoo.com> wrote in message
> news:#7es5kaiEHA.2848@TK2MSFTNGP10.phx.gbl...
> >
> > "lucy" <losemind@yahoo.com> wrote in message
> > news:ON$s76ZiEHA.1376@TK2MSFTNGP11.phx.gbl...
> > > Hi all,
> > >
> > > I am trying to add some lines to the MSDDK mirror driver sample in
> > enable.c.
> > >
> > > I want to add the lines that call the original ATI driver's
> DrvEnablePDEV
> > in
> > > the mirror driver DrvEnablePDEV function.
> > >
> > > Now for some ATI display driver, I can check the hardware device
manager
> > to
> > > see there is only one ATI "DLL" file, so I can know that I will use
> > > EngLoadImage in the mirror driver's DrvEnablePDEV function to call the
> > > original ATI one.
> > >
> > > But when I run it on another PC and try to use
> > >
> > > EngLoadImage("ATIXXX.DLL")
> > >
> > > I found in the hardware device manager there are 10s of ATIXXX.dll
> files,
> > > how do I know which one is the correct one to load in order to find
the
> > > original DrvEnablePDEV?
> > >
> > > I have tried dumpbin.exe in VC\BIN\ directory,
> > >
> > > I did the following:
> > >
> > > dumpbin /exports ati*.dll
> > >
> > > But I did see no "DrvEnablePDEV at all.
> > >
> > > What's the problem? Which one of the following files contains the
> > > DrvEnablePDEV?
> > >
> > > Thanks a lot,
> > >
> > > -Lucy
> > >
> > > -----------------------------------------------
> > >
> > > 08/03/2004 09:18 PM 233,472 ati2cqag.dll
> > > 08/03/2004 09:37 PM 208,896 ati2dvag.dll
> > > 08/03/2004 09:35 PM 30,720 ati2edxx.dll
> > > 08/03/2004 09:35 PM 86,016 ati2evxx.dll
> > > 05/25/2004 09:02 PM 870,784 ati3d1ag.dll
> > > 05/25/2004 09:06 PM 1,057,760 ati3d2ag.dll
> > > 08/03/2004 09:34 PM 2,177,184 ati3duag.dll
> > > 08/03/2004 09:34 PM 81,920 ATIDDC.DLL
> > > 08/03/2004 10:12 PM 135,168 ATIDEMGR.dll
> > > 08/03/2004 10:25 PM 294,912 atiiiexx.dll
> > > 08/03/2004 09:55 PM 6,451,200 atioglxx.dll
> > > 08/03/2004 09:35 PM 118,784 atipdlxx.dll
> > > 08/03/2004 09:20 PM 17,408 atitvo32.dll
> > > 11/09/2001 09:01 AM 24,064 ativcoxx.dll
> > > 08/03/2004 09:23 PM 484,128 ativvaxx.dll
> > >
> > >
> > >
> >
> >
> > Very strange! There is no DrvEnablePDEV in the ATI drivers? I tried
every
> > means and did not find the DLL that contains the DrvEnablePDEV...
> >
> >
>
>

Reply With Quote
lucy
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-24-2004, 05:20 PM

"Calvin Guan" <calvinguanNOSPAMS@sympatico.ca> wrote in message
news:eTG7zldiEHA.2664@TK2MSFTNGP11.phx.gbl...
> Vipin is right.
>
> Lucy, the Display driver you are looking for is ati2dvag.dll.
>
> good luck,
> Calvin
>
Thank you guys so much, Calvin and Vipin...

Is there any way that I can find this DLL file out by programming, since I
am now just programming on one PC but it needs to be able to work on various
of PCs...

Thank you so much!

-Lucy


Reply With Quote
Calvin Guan
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-24-2004, 06:57 PM
The name of the master display driver is specified in miniports INF file and
stored in miniport driver's class registry key(aka Software Key, or driver
key).
You will have to use SetupAPI to get it.

My system indicates:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contr ol\Class\{DISPLAY ADAPTER
CLASS GUID}\0000\Settings\InstalledDisplayDrivers is ati2dvag.dll. D3d along
with other drivers and DLLs are loaded by the 2D driver at runtime.


-
Calvin Guan Software Engineer
ATI Technologies Inc. www.ati.com
"lucy" <losemind@yahoo.com> wrote in message
news:OjMhMZfiEHA.396@TK2MSFTNGP12.phx.gbl...
>
> "Calvin Guan" <calvinguanNOSPAMS@sympatico.ca> wrote in message
> news:eTG7zldiEHA.2664@TK2MSFTNGP11.phx.gbl...
> > Vipin is right.
> >
> > Lucy, the Display driver you are looking for is ati2dvag.dll.
> >
> > good luck,
> > Calvin
> >
>
> Thank you guys so much, Calvin and Vipin...
>
> Is there any way that I can find this DLL file out by programming, since I
> am now just programming on one PC but it needs to be able to work on
various
> of PCs...
>
> Thank you so much!
>
> -Lucy
>
>

Reply With Quote
lucy
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-24-2004, 07:53 PM

"Calvin Guan" <cguan@pleasenospam.ati.com> wrote in message
news:%23BWhdPgiEHA.3664@TK2MSFTNGP12.phx.gbl...
> The name of the master display driver is specified in miniports INF file
and
> stored in miniport driver's class registry key(aka Software Key, or driver
> key).
> You will have to use SetupAPI to get it.
>
> My system indicates:
> \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contr ol\Class\{DISPLAY
ADAPTER
> CLASS GUID}\0000\Settings\InstalledDisplayDrivers is ati2dvag.dll. D3d
along
> with other drivers and DLLs are loaded by the 2D driver at runtime.
>
>
> -
> Calvin Guan Software Engineer
> ATI Technologies Inc. www.ati.com
> "lucy" <losemind@yahoo.com> wrote in message
> news:OjMhMZfiEHA.396@TK2MSFTNGP12.phx.gbl...

Thank you very much Calvin. I followed your idea and looked into the
registry,

I don't know what is the {DISPLAY ADAPTER CLASS GUID} of my ATI card, so how
can I get this GUID?

Then I did a search on InstalledDisplayDrivers and found a bunch of ATI and
other strange .DLLs in my system... so there is no unique solution to this
either. I was hoping that under the situation that I don't know the GUID of
the users' adaptor card, I can find a unique InstalledDisplayDrivers on
their systems...

So now the key is how to get {DISPLAY ADAPTER CLASS GUID} of users'
currently-using display card?

Any more thoughts on this? Thank you so much!


Reply With Quote
Calvin Guan
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-24-2004, 08:20 PM
IIRC, the adapter class GUID is defined by MSFT. It's same for all vendors.
It should be {4D36E969-E325-11CE-BFC1-08002BE10318}
You will need to pass this class GUID to SetupDiXxx to enumerate all devices
under the class.

Good luck,
Calvin
-
Calvin Guan Software Engineer
ATI Technologies Inc. www.ati.com
"lucy" <losemind@yahoo.com> wrote in message
news:eTu0jugiEHA.3288@TK2MSFTNGP10.phx.gbl...
>
> "Calvin Guan" <cguan@pleasenospam.ati.com> wrote in message
> news:%23BWhdPgiEHA.3664@TK2MSFTNGP12.phx.gbl...
> > The name of the master display driver is specified in miniports INF file
> and
> > stored in miniport driver's class registry key(aka Software Key, or
driver
> > key).
> > You will have to use SetupAPI to get it.
> >
> > My system indicates:
> > \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contr ol\Class\{DISPLAY
> ADAPTER
> > CLASS GUID}\0000\Settings\InstalledDisplayDrivers is ati2dvag.dll. D3d
> along
> > with other drivers and DLLs are loaded by the 2D driver at runtime.
> >
> >
> > -
> > Calvin Guan Software Engineer
> > ATI Technologies Inc. www.ati.com
> > "lucy" <losemind@yahoo.com> wrote in message
> > news:OjMhMZfiEHA.396@TK2MSFTNGP12.phx.gbl...
>
>
> Thank you very much Calvin. I followed your idea and looked into the
> registry,
>
> I don't know what is the {DISPLAY ADAPTER CLASS GUID} of my ATI card, so
how
> can I get this GUID?
>
> Then I did a search on InstalledDisplayDrivers and found a bunch of ATI
and
> other strange .DLLs in my system... so there is no unique solution to this
> either. I was hoping that under the situation that I don't know the GUID
of
> the users' adaptor card, I can find a unique InstalledDisplayDrivers on
> their systems...
>
> So now the key is how to get {DISPLAY ADAPTER CLASS GUID} of users'
> currently-using display card?
>
> Any more thoughts on this? Thank you so much!
>
>

Reply With Quote
vipin
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATI driver has the drvenablePDEV function?
Posted: 08-25-2004, 03:12 PM
lucy is walking a tight rope. Imagine the situation of display driver
crashing.
WHQL and stuff like that would start figuring and customers(ofcourse other
than lucy) would ask for signed drivers,even if it is a filter driver.

"Calvin Guan" <cguan@pleasenospam.ati.com> wrote in message
news:OPdTp9giEHA.384@TK2MSFTNGP10.phx.gbl...
> IIRC, the adapter class GUID is defined by MSFT. It's same for all
vendors.
> It should be {4D36E969-E325-11CE-BFC1-08002BE10318}
> You will need to pass this class GUID to SetupDiXxx to enumerate all
devices
> under the class.
>
> Good luck,
> Calvin
> -
> Calvin Guan Software Engineer
> ATI Technologies Inc. www.ati.com
> "lucy" <losemind@yahoo.com> wrote in message
> news:eTu0jugiEHA.3288@TK2MSFTNGP10.phx.gbl...
> >
> > "Calvin Guan" <cguan@pleasenospam.ati.com> wrote in message
> > news:%23BWhdPgiEHA.3664@TK2MSFTNGP12.phx.gbl...
> > > The name of the master display driver is specified in miniports INF
file
> > and
> > > stored in miniport driver's class registry key(aka Software Key, or
> driver
> > > key).
> > > You will have to use SetupAPI to get it.
> > >
> > > My system indicates:
> > > \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contr ol\Class\{DISPLAY
> > ADAPTER
> > > CLASS GUID}\0000\Settings\InstalledDisplayDrivers is ati2dvag.dll. D3d
> > along
> > > with other drivers and DLLs are loaded by the 2D driver at runtime.
> > >
> > >
> > > -
> > > Calvin Guan Software Engineer
> > > ATI Technologies Inc. www.ati.com
> > > "lucy" <losemind@yahoo.com> wrote in message
> > > news:OjMhMZfiEHA.396@TK2MSFTNGP12.phx.gbl...
> >
> >
> > Thank you very much Calvin. I followed your idea and looked into the
> > registry,
> >
> > I don't know what is the {DISPLAY ADAPTER CLASS GUID} of my ATI card, so
> how
> > can I get this GUID?
> >
> > Then I did a search on InstalledDisplayDrivers and found a bunch of ATI
> and
> > other strange .DLLs in my system... so there is no unique solution to
this
> > either. I was hoping that under the situation that I don't know the GUID
> of
> > the users' adaptor card, I can find a unique InstalledDisplayDrivers on
> > their systems...
> >
> > So now the key is how to get {DISPLAY ADAPTER CLASS GUID} of users'
> > currently-using display card?
> >
> > Any more thoughts on this? Thank you so much!
> >
> >
>
>

Reply With Quote
Jonas Wetz
Guest
Posts: n/a
 
Re: Question about DDK mirror driver sample: how to tell which ATIdriver has the drvenablePDEV function?
Posted: 08-17-2006, 09:12 AM
lucy schrieb:
> "Calvin Guan" <cguan@pleasenospam.ati.com> wrote in message
> news:%23BWhdPgiEHA.3664@TK2MSFTNGP12.phx.gbl...
>
>>The name of the master display driver is specified in miniports INF file
>
> and
>
>>stored in miniport driver's class registry key(aka Software Key, or driver
>>key).
>>You will have to use SetupAPI to get it.
>>
>>My system indicates:
>>\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Con trol\Class\{DISPLAY
>
> ADAPTER
>
>>CLASS GUID}\0000\Settings\InstalledDisplayDrivers is ati2dvag.dll. D3d
>
> along
>
>>with other drivers and DLLs are loaded by the 2D driver at runtime.
>>
>>
>>-
>>Calvin Guan Software Engineer
>>ATI Technologies Inc. www.ati.com
>>"lucy" <losemind@yahoo.com> wrote in message
>>news:OjMhMZfiEHA.396@TK2MSFTNGP12.phx.gbl...
>
>
>
> Thank you very much Calvin. I followed your idea and looked into the
> registry,
>
> I don't know what is the {DISPLAY ADAPTER CLASS GUID} of my ATI card, so how
> can I get this GUID?
>
> Then I did a search on InstalledDisplayDrivers and found a bunch of ATI and
> other strange .DLLs in my system... so there is no unique solution to this
> either. I was hoping that under the situation that I don't know the GUID of
> the users' adaptor card, I can find a unique InstalledDisplayDrivers on
> their systems...
>
> So now the key is how to get {DISPLAY ADAPTER CLASS GUID} of users'
> currently-using display card?
>
> Any more thoughts on this? Thank you so much!
>
>
You could use the EnumDisplayDevices() method to enumerate all installed
devices. You will have to look up the returned DISPLAY_DEVICE structure
then for a string called "DeviceKey". It contains your specific GUID.

Hope this helps a little!

Regards,

Jonas
Reply With Quote
 
LinkBack Thread Tools Display Modes
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


Similar Threads
Thread Thread Starter Forum Replies Last Post
HELP! Calling old DrvEnablePDEV in the MS mirror driver, bluescreened when rebooting, lucy Windows XP Device Drivers 11 07-17-2006 01:24 AM
any simple sample code of display filter driver? netwom Windows XP Device Drivers 4 08-14-2004 09:16 PM
Display Mirror Driver problems Nadav Windows XP Device Drivers 3 02-25-2004 11:06 PM
display mirror driver problem bubzhang news Windows XP Device Drivers 8 02-15-2004 09:06 PM
Any complete sample PCMCIA driver code for XP? Developer Windows XP Device Drivers 0 02-07-2004 04:53 PM