Using MXDW  
Author Message
XPSUser





PostPosted: XML Paper Specification (XPS), Using MXDW Top

I would like to use MXDW to create XPS documents from any application. But I would like to automate the creation by automating the printing process. But when I try to do this it always comes up with the "save as" dialog box. I had the same problem using the MODI driver as well. Does anyone know how to get rid of that

Any samples will be helpful.



Software Development for Windows Vista11  
 
 
tdumitr





PostPosted: XML Paper Specification (XPS), Using MXDW Top

The file save dialog is put there by the port monitor the printer driver is connected to. The only way to get rid of it is to make your own port monitor that saves to a file without asking for a name. Be careful though, the original port monitors may do more than just pop up the save dialog box. You may want to ask Microsoft what exactly is that they're doing in the port monitor.

Tibi.


 
 
LalitSRana





PostPosted: XML Paper Specification (XPS), Using MXDW Top

Hello Tibi and XPSUser,

I am fixed in exactly the same case as
XPSUser.

Tibi I doubt we can create a port monitor, as you told it does more than what we see.

Please suggest if there is any other way of getting rid of that "save as" dialog box.

Regards,



 
 
becket





PostPosted: XML Paper Specification (XPS), Using MXDW Top

We're coping with the same issue - need to automate the file saving without querying user for file name.

Tibi, I don't think that it's from the port monitor. We tried switching MXDW to our port monitor (that only saves all input to a file) and the Save as... dialog was still there. I was thinking that this was implemented in a filter, but that seems also wrong. Anyone succeeded

 
 
CTA





PostPosted: XML Paper Specification (XPS), Using MXDW Top

Hi,

Why not writing your own XPSDrv filter driver connected to NULL port, and in your filter(Stream-In and Stream-out) you take over the job and write it into where ever you want to be.

In that way, you are not changing the existing printer driver port monitor that assigned to. It is almost like other approach, so it is clear that your driver will behave different from the MXDW driver.

Just want to understand the reason!



 
 
becket





PostPosted: XML Paper Specification (XPS), Using MXDW Top

Hi, thanks for your response.

I need the port monitor to allow network printing. I've noticed that on WinXP the MXDW is connected to local port (without print monitor).

Anyway, so far I only succeeded in installing a customized XPSDrvSample, but there's too much functionality that I don't need. I didn't manage to install plain XPSDrv with nothing else but one simple filter (no UI dll nor other customization). Can someone post a sample .inf file that does only the above or just give me a lead Thanks.

 
 
bensoftware





PostPosted: XML Paper Specification (XPS), Using MXDW Top

becket,

I removed all the filters in XPSDrvSample by changing the filter configuration file (xdsmpl-PipelineConfig.xml), and clearing everything between the <Filters> </Filters> tags. I also went in the .inf and  removed all references to the filter .dll's. This should get you the "plain" XPSDrv that you wanted.

Right now, to generate a XPS file from XPSDrvSample, I have to print to either a local port  (eg. C:\temp\test.xps) or I can print to the file port, which then prompts me for a filename. We all want the the XPSDrv to simply create a file at a location of our choosing, without prompting the user or having to set up a local port. Somebody mentionned writing our own filter to do this..has anyone actually managed to do this Any hints as to how to start

 

 


 
 
becket





PostPosted: XML Paper Specification (XPS), Using MXDW Top

bensoftware,

Thank you, we finally managed to install a plain XPS Printer. Everything works great and the saving in our case is done via a simple print port monitor that determines a file and saves all incoming data to that file. We then directed the XPS Printer to that port and it works perfectly. Thanks for your help I almost gave up trying.

becket.

 
 
XPSUser





PostPosted: XML Paper Specification (XPS), Using MXDW Top

Finally !!

Can you give us some details about this

I have been at this for a long time ! When you say a "Plain XPS Printer" what do you mean Where did you get this printer or i assume you are talking about printer driver Also can i install this driver on Windows XP, Win2k and on a x64 box

For the Print port monitor i already have a port monitor with "InitializeMonitor, StartDoc etc..." can i use the same or to use the XPS driver it ahs to be different Any samples that you used would be helpful.

Thanks


 
 
becket





PostPosted: XML Paper Specification (XPS), Using MXDW Top

"Plain XPS Printer" is a printer with no filter nor a driver. Only core XPS drivers supplied by MS. We took the .inf of XPSDrvSmpl (from Windows Driver Kit) and removed all references to filter dlls and printer dll (as bensoftware suggested above). We have it running on WinXP, as far as I know XPS is not supported on Win2K, or am I wrong

You can use any port monitor as long as it is a port monitor. There are no special requirements (as far as I know).

becket.

 
 
XPSUser





PostPosted: XML Paper Specification (XPS), Using MXDW Top

Im sorry i meant to say Win2k3 .

Our customers will be using it on Win2k3 and WinXP and ofcourse Vista and Longhorn.

Anyone has any ideas when is longhorn out


 
 
Feng Yuan





PostPosted: XML Paper Specification (XPS), Using MXDW Top

If you're looking for a solution to by-pass the Print dialog box and File-Saveas dialog box, check:

http://blogs.msdn.com/fyuan/archive/2007/02/24/printing-documents-to-microsoft-xps-document-writer-without-user-interaction.aspx

Feng Yuan



 
 
XPSUser





PostPosted: XML Paper Specification (XPS), Using MXDW Top

"Plain XPS Printer" is a printer with no filter nor a driver. Only core XPS drivers supplied by MS. We took the .inf of XPSDrvSmpl (from Windows Driver Kit) and removed all references to filter dlls and printer dll (as bensoftware suggested above). We have it running on WinXP, as far as I know XPS is not supported on Win2K, or am I wrong

You can use any port monitor as long as it is a port monitor. There are no special requirements (as far as I know).

becket.

I cerated the plain XPS driver. But when i try to install that on a windows XP driver I get

an error installing the driver. The sample installs fine on Vista.

I assume it is due to this

The sample has the following prerequisites:

  • Microsoft XPS Document Writer print driver and the XPS filter-pipeline infrastructure.
  • Microsoft MSXML 6.0
    The preceding items are installed by default on Microsoft Windows Vista. On Windows XP (SP2 and later) and Windows Server 2003 (SP1 and later), you can install these components individually through the Microsoft XPS Essentials Pack and MSXML 6.0 downloadable installers or by installing the .NET Framework 3.0.

My question is can I get around not installing the XPS Document Writer Print driver

Also do you have any idea how i can get high resolution outputs. Would i need to build some kind of transformation filters Then how do i add those options into the configuration UI


 
 
XPSUser





PostPosted: XML Paper Specification (XPS), Using MXDW Top

If you're looking for a solution to by-pass the Print dialog box and File-Saveas dialog box, check:

http://blogs.msdn.com/fyuan/archive/2007/02/24/printing-documents-to-microsoft-xps-document-writer-without-user-interaction.aspx

Feng Yuan

Hi Feng,

Thanks for the blog. Im using your sample for demo purposes. But if we are talking about using this in an automated environment where performance is key then it will be tough. Also i need to add resolution options to begin with. And customer may ask many things as we move forward on this !


 
 
Jo0815





PostPosted: XML Paper Specification (XPS), Using MXDW Top

Hej Charlee,

_______

>Why not writing your own XPSDrv filter driver connected to NULL port, and in your filter(Stream-In and Stream-out) you take over the job and write it into where ever you want to be.
_______

do you have written such a filter on your own already and have tried out if that will work though I guess myself it should work, have any experiences May you also have an example you could share (if so, please contact/email me)

regards,
Jo