Microsoft Windows Vista Community Forums - Vistaheads
Recommended Download



Welcome to the Microsoft Windows Vista Community Forums - Vistaheads, YOUR Largest Resource for Windows Vista related information.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so , join our community today!

If you have any problems with the registration process or your account login, please contact us.

Driver Scanner

Spooler does not inform the Port Monitor about errors

microsoft.public.windows.vista.print fax scan






Speedup My PC
Reply
  #1 (permalink)  
Old 06-01-2007
valentin tihomirov
 

Posts: n/a
Spooler does not inform the Port Monitor about errors
I have compiled the XPSDrv demo targeting Windows Vista and run it on
Windows XP. It fails printing some documents causing the applicaitons to
hang when some standard print ports are used. I'm writing a custom print
monitor grounding on the DDK example. Both the redmon and my monitor receive
a premature EndDoc -- after a single 22-byte write is made. The following
error is recorded in the System Event Log:

" The document Microsoft Word - XPSDrv_Config-1.doc owned by valentin failed
to print on printer XPSDrv Sample Driver. Data type: RAW. Size of the spool
file in bytes: 405633. Number of bytes printed: 65577. Total number of pages
in the document: 11. Number of pages printed: 0. Client machine: \\MERCURY.
Win32 error code returned by the print processor: 2147549183 (0x8000ffff). "

The same problem is observed when using RedMon -- it starts your application
and delivers only 22 first bytes to it. There is no way to inform the
application about failure since the monitor is not aware of it itself. I was
trying getting error flag from job status retreived via GetJob in the EndDoc
of my monitor -- The status is PRINTING for normally finished jobs and is
additionally SPOOLING for the troublesome jobs. But but no error observed.
Furthermore, I have also noticed that XPSDrv does not notify the printqueue.
I have a monitor application, which logs all the activity in a printer's
queue but it is silent on the XPS sample driver regardless of whether the
job is printed sucessfully or fails. But that is another story.

I'm sure that 1) XPSDrv must be repaired; and 2) threads must fail fast. The
latter means that you should stop a task once one of it steps (which likely
is a preconditioin for the subsequent stages) fails. I see no reason to
invoke further processing from the monitor when printing fails and the
output is incomplete, therefore.

Thanks


Reply With Quote
Sponsored Links
Reply


Thread Tools
Display Modes

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

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off

Similar Threads
Thread Thread Starter Forum Replies Last Post
Advanced USB Port Monitor 2.2.0.8 VistaDev Vista Software Development Feed 0 04-23-2007 21:48
Advanced USB Port Monitor 2.2.0.8 VistaDev Vista Software Development Feed 0 04-20-2007 03:44
Security World: ArcSight's security information management product awarded by Inform Steve Security News 0 04-17-2007 22:47
Inform your Customers =?Utf-8?B?RGlzcGxheSwgVmlkZW8gQ2FyZCwgTW92aWUgTWFrZXI=?= microsoft.public.windows.vista hardware devices 15 02-12-2007 05:39




All times are GMT +1. The time now is 10:01.




Driver Scanner - Free Scan Now

Vistaheads.com is part of the Heads Network. See also XPHeads.com , Win7Heads.com and Win8Heads.com.


Design by Vjacheslav Trushkin for phpBBStyles.com.
Powered by vBulletin® Version 3.6.7
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.6.0 RC 2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120