Windows > Software Development for Windows Client Forums > XML Paper Specification (XPS) > How to use SimplePipelineFilter with my Monolithic configuration module
Ask a questionAsk a question
 

AnswerHow to use SimplePipelineFilter with my Monolithic configuration module

  • Wednesday, June 28, 2006 9:02 AMMridu Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    We have a Monolithic Config Module with IPrintTicketProvider. And this is working fine with our Monolithic GDI-based driver.
     
    Now we want to use the same Config Module with the SimplePipelineFilter (which comes with the WDK 5384).
     
    Could you please let us know how to integrate our UI with this SimplePipelineFilter.
     
    Thanks and regards,
    Mridu

Answers

  • Saturday, July 01, 2006 6:18 AMMridu Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer

    I have been able to fix the problem. Thought should share it. I took the INF file that comes with WDK 5384 and tailored it a bit .And the INF file now looks like:

    [INSTALL_XDSMPL_FILTERS]
    CopyFiles=XPSDrvSample,ConfigPlugin
    DriverFile=mxdwdrv.dll
    ConfigFile=myui.dll
    HelpFile=my.hlp
    DataFile=XDSmpl.GPD
    Include=NTPRINT.INF
    Needs=UNIDRV.OEM, XPSDRV.OEM


    [DestinationDirs]
    DefaultDestDir=66000

    [ConfigPlugin]
    my.ini
    myui.dll

    [XPSDrvSample]
    xdsmpl.gpd
    WdkPipelineFilter.dll
    SimplePipelineConfig.xml
    my.hlp

    [SourceDisksNames.x86]
    1 = %Location%,,
    2 = %Location%,,,\objfre_wlh_x86\i386

    [SourceDisksFiles]
    xdsmpl.gpd                               = 1
    SimplePipelineConfig.xml      = 1
    my.ini                                         = 1
    WdkPipelineFilter.dll               = 1
    my.hlp                                        = 1

     

    I could not remove 1. Needs=UNIDRV.OEM 2. DataFile=XDSmpl.GPD 3. Include=NTPRINT.INF
    If I remove these 3 items, the driver does not install. Do let me know how I can remove them.

    The Filter config file should look like:

    <Filters>
       <Filter dll            = "WdkPipelineFilter.dll"
               clsid          = "{8267d291-6ddd-4972-a94e-3ce88149a1fa}"
               name           = "Pipeline filter">
               <Input   guid  = "{b8cf8530-5562-47c4-ab67-b1f69ecf961e}" comment="IID_IPrintReadStream"/>
               <Output  guid  = "{4368d8a2-4181-4a9f-b295-3d9a38bb9ba0}" comment="IID_IPrintWriteStream"/>
       </Filter>
    </Filters>

    Hope this is useful.

    -Mridu

All Replies

  • Saturday, July 01, 2006 6:18 AMMridu Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer

    I have been able to fix the problem. Thought should share it. I took the INF file that comes with WDK 5384 and tailored it a bit .And the INF file now looks like:

    [INSTALL_XDSMPL_FILTERS]
    CopyFiles=XPSDrvSample,ConfigPlugin
    DriverFile=mxdwdrv.dll
    ConfigFile=myui.dll
    HelpFile=my.hlp
    DataFile=XDSmpl.GPD
    Include=NTPRINT.INF
    Needs=UNIDRV.OEM, XPSDRV.OEM


    [DestinationDirs]
    DefaultDestDir=66000

    [ConfigPlugin]
    my.ini
    myui.dll

    [XPSDrvSample]
    xdsmpl.gpd
    WdkPipelineFilter.dll
    SimplePipelineConfig.xml
    my.hlp

    [SourceDisksNames.x86]
    1 = %Location%,,
    2 = %Location%,,,\objfre_wlh_x86\i386

    [SourceDisksFiles]
    xdsmpl.gpd                               = 1
    SimplePipelineConfig.xml      = 1
    my.ini                                         = 1
    WdkPipelineFilter.dll               = 1
    my.hlp                                        = 1

     

    I could not remove 1. Needs=UNIDRV.OEM 2. DataFile=XDSmpl.GPD 3. Include=NTPRINT.INF
    If I remove these 3 items, the driver does not install. Do let me know how I can remove them.

    The Filter config file should look like:

    <Filters>
       <Filter dll            = "WdkPipelineFilter.dll"
               clsid          = "{8267d291-6ddd-4972-a94e-3ce88149a1fa}"
               name           = "Pipeline filter">
               <Input   guid  = "{b8cf8530-5562-47c4-ab67-b1f69ecf961e}" comment="IID_IPrintReadStream"/>
               <Output  guid  = "{4368d8a2-4181-4a9f-b295-3d9a38bb9ba0}" comment="IID_IPrintWriteStream"/>
       </Filter>
    </Filters>

    Hope this is useful.

    -Mridu

  • Thursday, July 12, 2007 12:16 AMZHajdu Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Has anybody tried this since the last post ?

    Because I basically see the same problem, but his fix/workaround doesn't work for me using WDK 6000.

     

    Thanks.

     

     

     

  • Tuesday, June 03, 2008 1:28 AMAchellies Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Proposed Answer

    yeah, it is all right...

    • Proposed As Answer bynaaryan Tuesday, October 13, 2009 12:43 PM
    •  
  • Tuesday, October 13, 2009 12:48 PMnaaryan Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Has Code
    hi every body,

    i am working on XPSDrv printer driver.
    my query are here.
    1. how to hook output of one Filter before it passed to another Filter in Filter pipeline Manager service.

    2. what is significance of Input guid and Out guid in "xdsmpl-PipelineConfig.xml" file.  detail given below

    <Filter    dll            = "WdkPipelineFilter.dll"
               clsid          = "{5f5460d2-b313-44ca-82e4-37f83d793999}"
               name           = "Page Scaling filter">
               <Input   guid  = "{b8cf8530-5562-47c4-ab67-b1f69ecf961e}"
    	                     	comment="IID_IPrintReadStream"/>
               <Output  guid  = "{4368d8a2-4181-4a9f-b295-3d9a38bb9ba0}"
    			     	comment="IID_IPrintWriteStream"/>
       </Filter> 


    please help me to fixed it.

    Thanks & Regards 
    Naaryan