X64 vista, outputdebugstring from printer driver

I’m trying to get debug output (from outputdebugstring) from a 64 bit
printer driver on vista.

Is it possible to capture the output of outputdebugstring from a 64 bit
printer driver? I have test applications (32 bit) which use the same
wrapper function around OutputDebugString, and I *can* see their output
on 64 bit vista.

I have downloaded the latest dbgview.exe (4.74), and turned on all the
capture options (everything on the capture menu is checked except “log
boot”). I get no output from my driver.

I tried to set the default registry key at
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print
Filter.
However, everything I’ve seen says set it to 0xf. The “(default)” key
is reg_sz. Setting it to “f” or “0xf” doesn’t do anything. Neither
does creating a REG_DWORD key called “(default)” with a value of 0xf.

UAC is turned off, and I am an administrator.

Thanks,
ScottR

Robins, Scott wrote:

I’m trying to get debug output (from outputdebugstring) from a 64 bit
printer driver on vista.

I have downloaded the latest dbgview.exe (4.74), and turned on all the
capture options (everything on the capture menu is checked except “log
boot”). I get no output from my driver.

I tried to set the default registry key at
HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print
Filter.
However, everything I’ve seen says set it to 0xf. The “(default)” key
is reg_sz. Setting it to “f” or “0xf” doesn’t do anything. Neither
does creating a REG_DWORD key called “(default)” with a value of 0xf.

Close. It’s not the (default) key. You need to create a REG_DWORD
value called “DEFAULT” and set that to 15 (0xf).

http://www.osronline.com/article.cfm?article=295


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Thanks, Tim.

But 1) the article you pointed to refers to dbgprint/kdprint which I
believe is kernel mode only and printer drivers in vista are user mode
and use outputdebugstring (which I think is different), and 2) I tried
it anyway and it didn’t work. Still no output.

Doesn’t matter if the app printing is 32 or 64 bit, or explorer
(printers folder).

Thanks,
ScottR

Close. It’s not the (default) key. You need to create a REG_DWORD
value called “DEFAULT” and set that to 15 (0xf).

http://www.osronline.com/article.cfm?article=295


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

While the article may refer to kernel print routines, they blocked all
without adjusting the registry. In fact, a lot of user services were the
worst spewers.


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr
Remove StopSpam to reply

“Robins, Scott” wrote in message
news:xxxxx@ntdev…
Thanks, Tim.

But 1) the article you pointed to refers to dbgprint/kdprint which I
believe is kernel mode only and printer drivers in vista are user mode
and use outputdebugstring (which I think is different), and 2) I tried
it anyway and it didn’t work. Still no output.

Doesn’t matter if the app printing is 32 or 64 bit, or explorer
(printers folder).

Thanks,
ScottR

>
> Close. It’s not the (default) key. You need to create a REG_DWORD
> value called “DEFAULT” and set that to 15 (0xf).
>
> http://www.osronline.com/article.cfm?article=295
>
> –
> Tim Roberts, xxxxx@probo.com
> Providenza & Boekelheide, Inc.

My apologies to all. I have an application which sets the debug flags
in the registry (which the driver then reads), and I had a version
mismatch between the driver and the app, causing the driver to think
none of the flags were turned on.

D’oh!

Thanks,
ScottR

Don Burn wrote:

In fact, a lot of user services were the worst spewers.

So this was a measure to prevent “debug spam”? :slight_smile:

And the performance drop that goes with it.


Don Burn (MVP, Windows DDK)
Windows 2k/XP/2k3 Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr
Remove StopSpam to reply

“Hagen Patzke” wrote in message news:xxxxx@ntdev…
> Don Burn wrote:
>> In fact, a lot of user services were the worst spewers.
>
> So this was a measure to prevent “debug spam”? :slight_smile:
>