Hi
I extended the wdk mirror driver sample and its working fine on win7-32 bit system. Then i generated the 64 bit binaries , decorated the inf file. On win7 64 bit, driver is getting installed properly. Iam testing the driver by disabling the signing requirement.
In my case mirror dll is getting unloaded(without any of the Drv functions being called) while system is booting. When i debugged and checked the disassembly, i noticed that there is check for DrvGetModes (which is not implemented in my mirror driver) and driver is getting unloaded.
So, there can be two possibilities
1)DrvGetModes needs to be implemented for win7 64 bit(which i guess is not)
or
2) My driver is acting like a normal display driver and not mirror driver.
My doubt is
Are there any differences in INF file for mirror driver and any other display driver? From implementation perspective what are the differences between normal display driver and mirror driver?
Thanks.
Hi vish,
AFAIK, DrvGetModes is required only if you have own display h/w. Since
in case of mirror driver we won’t be having your own display h/w so you need
not to implement it.
>…In my case mirror dll is getting unloaded(without any of the Drv
functions being called) while system is booting…
Are you not at all able to load the dll?
/sarbojit
On Thu, Jan 20, 2011 at 9:16 PM, wrote:
> Hi
> I extended the wdk mirror driver sample and its working fine on win7-32 bit
> system. Then i generated the 64 bit binaries , decorated the inf file. On
> win7 64 bit, driver is getting installed properly. Iam testing the driver by
> disabling the signing requirement.
> In my case mirror dll is getting unloaded(without any of the Drv functions
> being called) while system is booting. When i debugged and checked the
> disassembly, i noticed that there is check for DrvGetModes (which is not
> implemented in my mirror driver) and driver is getting unloaded.
> So, there can be two possibilities
> 1)DrvGetModes needs to be implemented for win7 64 bit(which i guess is not)
> or
> 2) My driver is acting like a normal display driver and not mirror driver.
>
> My doubt is
> Are there any differences in INF file for mirror driver and any other
> display driver? From implementation perspective what are the differences
> between normal display driver and mirror driver?
>
> Thanks.
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
Hi Sarbojit,
While system is booting,
In the first pass, dll is loaded, DRvEnableDriver is called, then DRvDisableDriver and then dll is unloaded.
In the second pass,dll is loaded and then it is unloaded.
So, when the system boots up there is no corresponding dll and so driver is not called from application.
Thanks.
You must be calling ChangeDisplaySettings() from your application. If yes,
then it should be able to load the dll again. If no, then let me know how
you are loading your dll in normal cases (Like you said on 32bits it is
working fine).
On Fri, Jan 21, 2011 at 1:31 PM, wrote:
> Hi Sarbojit,
> While system is booting,
> In the first pass, dll is loaded, DRvEnableDriver is called, then
> DRvDisableDriver and then dll is unloaded.
> In the second pass,dll is loaded and then it is unloaded.
>
> So, when the system boots up there is no corresponding dll and so driver is
> not called from application.
>
> Thanks.
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
When i call changedisplaysettings from application, dll is getting loaded and then unloaded without calling any of the driver Drv functions.
On 32 bit systems, driver is loaded in the sameway by calling changeDisplaySettings from application (only one time just after driver is installed).
Thanks.
>>>When i call changedisplaysettings from application, dll is getting loaded
and then >>>unloaded without calling any of the driver Drv functions.
I assumed, when you are calling changedisplaysettings then you must be
seeing DrvEnableDriver call atleast and immediate after driver might be
getting unloaded. In that case my guess is, you are doing some thing wrong
in DrvEnableDriver().
On Fri, Jan 21, 2011 at 2:55 PM, wrote:
> When i call changedisplaysettings from application, dll is getting loaded
> and then unloaded without calling any of the driver Drv functions.
>
> On 32 bit systems, driver is loaded in the sameway by calling
> changeDisplaySettings from application (only one time just after driver is
> installed).
>
> Thanks.
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
>
Iam not seeing any calls. Driver is getting loaded and then immediately unloaded. DrvEnableDriver is not called.
My implementation of DrvEnableDriver is same as of wdk sample except that my pded->iDriverVersion is DDI_DRIVER_VERSION_NT5_01_SP1; bec i just want to support windows XP and later versions.