Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTDEV

Before Posting...

Please check out the Community Guidelines in the Announcements and Administration Category.

More Info on Driver Writing and Debugging


The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.


Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/


Application cannot obtain the information of monolithic driver's device fonts on Wind

Nghiem_Dang_DinhNghiem_Dang_Dinh Member - All Emails Posts: 1
1. Our own printer driver which is developed by using WDK (Windows Driver Kits 7.1.0), is known as monolithic driver.
2. In addition, I wrote sample application calls EnumFontFamiliesEx() in order to confirm whether the sample application can obtain our own driver's device fonts information both on Windows 32-bit and 64-bit?
+ On Windows 32-bits, sample application can obtain the information of our own printer driver driver's device fonts successfully by using EnumFontFamiliesEx() (as expected)
+ On Windows 64-bits, sample application cannot obtain the information of our own printer driver driver's device fonts successfully by using EnumFontFamiliesEx(). (against expected).
3. Our Monolithic printer dirver uses DrvQueryFont(),DrvQueryFontTree() function which is called by GDI to get IFIMETRICS structure for a given font. However, we found the difference between Windows 64-bits and 32-bits when reproducing problem.
- On Windows 32-bits, DrvQueryFont() is called 140 times and DrvQueryFontTree() is called 140 times
- On Windows 64-bits, DrvQueryFont() is called just 1 time, but DrvQueryFontTree() is not called.

4. Above problem does not occur with Uni-driver (Mini Dirver) which is also developed by using WDK 7.1.0
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Internals & Software Drivers 7 February 2022 Live, Online
Kernel Debugging 21 March 2022 Live, Online
Developing Minifilters 23 May 2022 Live, Online
Writing WDF Drivers 12 September 2022 Live, Online