Download presentation
Presentation is loading. Please wait.
1
Developing XPSDrv Print Drivers
WinHEC 2006 4/19/2017 8:07 PM Developing XPSDrv Print Drivers Felix Maxa Software Design Engineer Digital Documents Platform and Solutions Feng Yue Development Lead Digital Documents Platform and Solutions © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
2
Assumes basic familiarity with XPSDrv
WinHEC 2006 4/19/2017 8:07 PM Agenda XPSDrv Filter Pipeline XPSDrv Configuration GPD/PPD-Only Configuration Unidrv/PScript5 Plug-in Configuration XPSDrv Setup and Installation XPSDrv Logo Requirements Assumes basic familiarity with XPSDrv © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
3
XPSDrv Overview New print driver model in Window Vista
WinHEC 2006 4/19/2017 8:07 PM XPSDrv Overview New print driver model in Window Vista XPS Document format is the spool file Advanced color and graphic support Application content preserved to driver or device Defines an extensible filter pipeline Consolidated design for plug-ins Shared common functionality Allows flexible allocation of rendering between driver and device (scalable consumption) Compatibility with Win32 and Windows Presentation Foundation (WPF) applications © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
4
XPSDrv Filter Pipeline
WinHEC 2006 4/19/2017 8:07 PM XPSDrv Filter Pipeline Felix Maxa Software Design Engineer Digital Documents Platform and Solutions © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
5
XPSDrv Filter Pipeline Architecture
WinHEC 2006 4/19/2017 8:07 PM XPSDrv Filter Pipeline Architecture Provided by Microsoft ISV IHV Win32 App WPF App Application Process Spooler Process Filter Pipeline Process Version 3 Driver Config Module/ Plug-in Filter Pipeline XPS Filter Pipeline Manager Conversion Render Module Filter 1 FP Config XML Property Bag Filter N © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
6
Filter Pipeline Process Filter Pipeline Manager
WinHEC 2006 4/19/2017 8:07 PM Print Paths Provided by Microsoft ISV IHV SPOOL FILE Spooler Process Filter Pipeline Process Filter Pipeline Filter Pipeline Manager Filter 1 Print processor Filter N GDI FP Config XML Property Bag Printer Driver © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
7
Filter Pipeline Manager
WinHEC 2006 4/19/2017 8:07 PM Filter Pipeline Manager The Filter Pipeline Manager (FPM) is responsible for Loading and initializing filters as described by the filter configuration file to create the filter pipeline Managing the data between filters as the print job is processed via the Inter-filter Communicators (IFC) Unloading filters when the print job is finished © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
8
Print Pipeline Filter Configuration File
WinHEC 2006 4/19/2017 8:07 PM Print Pipeline Filter Configuration File XML file that defines Filter ordering – Simple ordering of XML elements Filter interfaces – Defined by XML attributes Input/output formats for each filter – Defined by XML elements Potential for modification by IT Admins to add filters Be aware of functionality impact © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
9
Pipeline Config File Sample
WinHEC 2006 4/19/2017 8:07 PM Pipeline Config File Sample <Filters> <Filter dll = "WdkPipelineFilter.dll" clsid = "{8267d291-6ddd-4972-a94e-3ce88149a1fa}" name = "add simple page"> <Input guid = "{b8cf c4-ab67-b1f69ecf961e}" comment = "IID_IXpsDocumentProvider"/> <Output guid = "{4368d8a a9f-b295-3d9a38bb9ba0}" comment = "IID_IXpsDocumentConsumer"/> </Filter> <FilterServiceProvider dll = "providerA.dll"/> <FilterServiceProvider dll = "providerB.dll"/> </Filters> © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
10
Property Bag Sharing data between Pairs (string key, variant value)
WinHEC 2006 4/19/2017 8:07 PM Property Bag Sharing data between Filters Pipeline manager and filters Pairs (string key, variant value) Examples ("PrinterName", VARIANT_BSTR) ("ProgressReport", VARIANT_IUNKNOWN) ("PrinterHandle", VARIANT_BYREF) ("UserSecurityToken", VARIANT_BYREF) ("PrintJobId", VARIANT_ULONG) © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
11
Filter Access To XPS Job
WinHEC 2006 4/19/2017 8:07 PM Filter Access To XPS Job Stream XPS high level interfaces [0].piece FONT-1 Resources\99bc59ed.ODTTF\ [0].piece IMAGE-1 Resources\ d.jpg\ [1].last.piece IMAGE-1 Resources\ d.jpg\ [0].piece FONT-2 Resources\6b2554d5.ODTFF\ [1].last.piece FONT-2 Resources\6b2554d5.ODTFF\ [0].piece IMAGE-2 Resources\42a30e86.jpg\ [1].last.piece IMAGE-2 Resources\42a30e86.jpg\ [0].last.piece PT-1 Metadata\Job_PT.xml\ [0].piece FDS FixedDocumentSequence.fdseq\ [1].piece FDS FixedDocumentSequence.fdseq\ [2].last.piece FDS FixedDocumentSequence.fdseq\ [0].piece FP Documents\1\Pages\3.fpage [1].last.piece FP Documents\1\Pages\3.fpage © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
12
XPS Filter Pipeline WinHEC 2006 4/19/2017 8:07 PM
© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
13
XPS Filter Pipeline Notifications
WinHEC 2006 4/19/2017 8:07 PM XPS Filter Pipeline Notifications © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
14
XPS Render Filter Notifications
WinHEC 2006 4/19/2017 8:07 PM XPS Render Filter Notifications © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
15
XPS Document Filter Interfaces
WinHEC 2006 4/19/2017 8:07 PM XPS Document Filter Interfaces Filters can Read and write Page markup Read content for other parts Create new parts and associate with pages Create new documents and pages Delete relationships Enumerate resources for page Mix of XPS and Stream based filters The filter pipeline manager takes care of data conversion © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
16
The Filter Interface Definition
WinHEC 2006 4/19/2017 8:07 PM The Filter Interface Definition interface IPrintPipelineFilter : IUnknown { HRESULT InitializeFilter( [in] IInterFilterCommunicator *pICommunicator, [in] IPrintPipelinePropertyBag *pIPropertyBag, [in] IPrintPipelineManagerControl *pIPipelineControl ); ShutdownOperation( void StartOperation( } © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
17
Custom Filter Interfaces
WinHEC 2006 4/19/2017 8:07 PM Custom Filter Interfaces <Filters> <Filter dll = "CustomFilterA.dll" clsid = "{33b32cf3-954c-4dfd-a016-6f05303fe65b}" name = "read stream - write custom"> <Input guid = "{4d47a67c-66cc e-daf466fe5bc4}" comment = "IID_IPrintReadStream"/> <Output guid = "{ C }" provider = "{a6686ae8-909f-42ee fc6c815df61}" dll = "CustInterfaceProvider.dll"/> </Filter> <Filter dll = "CustomFilterB.dll" clsid = "{f761761d a-adff-91460ba008d9}" name = "read custom - write stream"> <Input guid = "{ C }"/> <Output guid = "{65bb7f1b-371e ac7-912f510c1a38}" comment = "IID_IPrintWriteStream"/> </Filters> © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
18
Custom Filter Interfaces
WinHEC 2006 4/19/2017 8:07 PM Custom Filter Interfaces © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
19
Filter Service Providers
WinHEC 2006 4/19/2017 8:07 PM Filter Service Providers Module which exports HRESULT DrvPopulateFilterServices( __in IPrintPipelinePropertyBag *pPropertyBag ); Registered in the pipeline config <FilterServiceProvider dll = “providerA.dll”/> Access to configuration module functionality and data from filters Ex. IPrintCoreHelper © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
20
Interleaving Page level interleaving
WinHEC 2006 4/19/2017 8:07 PM Interleaving Page level interleaving Resources first Mark up first Interleaved at certain piece size For some devices, filter must help Ensure resources are available when needed Enables consumption by memory constrained consumers Use discard control Send resources again © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
21
Interleaving In Config File
WinHEC 2006 4/19/2017 8:07 PM Interleaving In Config File <Filter dll = "TestFilter.dll" clsid = "{e96f780a-5b6a-47d5-a433-fa0d4e52688d}" <Input guid = "{b8cf c4-ab67-b1f69ecf961e}"/> <Output guid = "{4368d8a a9f-b295-3d9a38bb9ba0}"/> <Interleaving mode="MarkupFirst" pieceSize="0"/> <Interleaving mode="MarkupFirst" pieceSize="2000"/> <Interleaving mode="ResourcesFirst" pieceSize="30900"/> <Interleaving mode="MarkupFirst"/> <Interleaving mode="ResourcesFirst"/> </Filter> © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
22
Filter Recommendations
WinHEC 2006 4/19/2017 8:07 PM Filter Recommendations Filters should not spawn separate processes or threads If a separate process/thread is required for a filter, the filter MUST properly manage the process/thread lifetime Stream filters – aware that not all data is correctly interleaved Filters must be robust to non-interleaved and incorrectly interleaved content © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
23
Common Implementation Challenges
WinHEC 2006 4/19/2017 8:07 PM Common Implementation Challenges COM apartment model Driver packages – XML file changes PnPUtil.exe Debug help System\CurrentControlSet\Control\Print PipelineHostTimeout REG_DWORD miliseconds PipelineDebugLog REG_DWORD 0 or non-0 © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
24
WinHEC 2006 4/19/2017 8:07 PM XPSDrv Configuration Feng Yue Development Lead Digital Documents Platform and Solutions © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
25
XPSDrv Configuration Architecture
WinHEC 2006 4/19/2017 8:07 PM XPSDrv Configuration Architecture Provided by Microsoft Win32 App WPF App ISV IHV XPSDrv Driver Version 3 Driver Config Module Unidrv Plug-in GPD Unidrv Config Module PPD PScript5 Config Module PScript5 Plug-in Filter Pipeline XPS Filter 1 Monolithic Config Module Filter N Conversion Render Module © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
26
GPD/PPD-Only Configuration
WinHEC 2006 4/19/2017 8:07 PM GPD/PPD-Only Configuration © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
27
WinHEC 2006 4/19/2017 8:07 PM GPD/PPD-Only Config GPD/PPD-only configuration is supported for XPSDrv printer drivers Smallest investment cost and short development time No customization of Unidrv/PScript5 behavior No UI customization Best suited for XPSDrv passthrough or basic printer drivers Primary changes are Print Schema Mapping XPSDrv Specific GPD/PPD Entries © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
28
GPD/PPD To Print Schema Map
WinHEC 2006 4/19/2017 8:07 PM GPD/PPD To Print Schema Map Standard GPD/PPD keywords automatically mapped to public Print Schema equivalents Non-standard keywords automatically mapped to private device namespace Example: *Feature: PaperSize -> <psf:Feature name=“psk:PageMediaSize”> Example: *Feature: IHVFoo -> <psf:Feature name=“ns0001:IHVFoo”> © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
29
GPD/PPD To Print Schema Map
WinHEC 2006 4/19/2017 8:07 PM GPD/PPD To Print Schema Map Windows Vista GPD/PPD parsers will recognize new Print Schema mapping keywords Specify IHV private namespace for automatically mapped keyword Specify mapping from non-standard keywords to Print Schema equivalents GPD Keywords PrintSchemaPrivateNamespaceURI PrintSchemaKeywordMap PPD Keywords MSPrintSchemaPrivateNamespaceURI MSPrintSchemaKeywordMap © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
30
GPD/PPD XPSDrv Entries
WinHEC 2006 4/19/2017 8:07 PM GPD/PPD XPSDrv Entries New “Include” entry to reference XPSDrv standard contents msxpsinc.gpd msxpsinc.ppd Currently files include a new keyword to specify XPSDrv printer driver *IsXPSDriver?: TRUE (msxpsinc.gpd) *MSIsXPSDriver?: TRUE (msxpsinc.ppd) Keyword must be present to properly recognize XPSDrv drivers © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
31
GPD Sample File *GPDFileVersion: "1.0" *Include: "StdNames.gpd”
WinHEC 2006 4/19/2017 8:07 PM GPD Sample File *GPDFileVersion: "1.0" *Include: "StdNames.gpd” *Include: “MSXpsInc.gpd” *% *% IHV Private Namespace *PrintSchemaPrivateNamespaceURI:“ *% IHV Private Feature *Feature: IHVStapling { *PrintSchemaKeywordMap: “JobStaple" *Option: Enabled { *PrintSchemaKeywordMap: “StapleTopLeft" } *Option: Disabled { *PrintSchemaKeywordMap: “None” } } © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
32
Unidrv/PScript5 Plug-In Configuration
WinHEC 2006 4/19/2017 8:07 PM Unidrv/PScript5 Plug-In Configuration © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
33
Unidrv/PScript5 Plug-In Config
WinHEC 2006 4/19/2017 8:07 PM Unidrv/PScript5 Plug-In Config Unidrv/PScript5 Plug-in allows full customization of config module Ability to modify, replace and add to system PrintTicket/PrintCapabilities (PT/PC) processing Ability to fully replace system UI Non-trivial investment cost and development time Suited for all types of XPSDrv drivers Primary changes are Plug-in PT/PC provider: IPrintOemPrintTicketProvider Helper interface for Unidrv/PScript5 settings: IPrintCoreHelper XPSDrv document events and communicating with filters © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
34
IPrintOemPrintTicketProvider
WinHEC 2006 4/19/2017 8:07 PM IPrintOemPrintTicketProvider Enables plug-ins to customize PT/PC processing Results of Unidrv/PScript5 processing will be passed to plug-in to finalize processing DECLARE_INTERFACE_(IPrintOemPrintTicketProvider, IUnknown) { STDMETHOD(GetSupportedVersions)(…) STDMETHOD(BindPrinter)(…) STDMETHOD(PublishPrintTicketHelperInterface)(…) STDMETHOD(QueryDeviceDefaultNamespace)(…) STDMETHOD(ConvertPrintTicketToDevMode)(…) STDMETHOD(ConvertDevModeToPrintTicket)(…) STDMETHOD(CompletePrintCapabilities)(…) STDMETHOD(ExpandIntentOptions)(…) STDMETHOD(ValidatePrintTicket)(…) }; © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
35
WinHEC 2006 4/19/2017 8:07 PM IPrintCoreHelper COM interface that enables plug-ins to read and set the Unidrv and PScript5 private DEVMODE settings Enables functional parity for full-UI replacement DECLARE_INTERFACE_(IPrintCoreHelper, IUnknown) { // IUnknown methods skipped STDMETHOD(CreateInstanceOfMSXMLObject)(…) STDMETHOD(EnumConstrainedOptions)(…) STDMETHOD(EnumFeatures)(…) STDMETHOD(EnumOptions)(…) STDMETHOD(GetOption)(…) STDMETHOD(SetOptions)(…) STDMETHOD(WhyConstrained)(…) STDMETHOD(GetFontSubstitution)(…) STDMETHOD(SetFontSubstitution)(…) }; © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
36
WinHEC 2006 4/19/2017 8:07 PM IPrintCoreHelper Two derived interfaces provide Unidrv and PScript5 specific functionality DECLARE_INTERFACE_(IPrintCoreHelperUni, IPrintCoreHelper) { STDMETHOD(CreateDefaultGDLSnapshot)(…) STDMETHOD(CreateGDLSnapshot)(…) }; DECLARE_INTERFACE_(IPrintCoreHelperPS, IPrintCoreHelper) STDMETHOD(GetGlobalAttribute)(…) STDMETHOD(GetFeatureAttribute)(…) STDMETHOD(GetOptionAttribute)(…) © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
37
XPSDrv Document Events
WinHEC 2006 4/19/2017 8:07 PM XPSDrv Document Events XPSDrv will use the existing DrvDocumentEvent mechanism When printing from Win32 apps, existing GDI events will be used When printing from WPF apps, the following new XPS events will be used DOCUMENTEVENT_XPS_QUERYFILTER DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRE/POST DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRE/POST DOCUMENTEVENT_XPS_ADDFIXEDPAGEEPRE/POST DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTSEQUENCEPRINTTICKETPRE/POST DOCUMENTEVENT_XPS_ADDFIXEDDOCUMENTPRINTTICKETPRE/POST DOCUMENTEVENT_XPS_ADDFIXEDPAGEPRINTTICKETPRE/POST DOCUMENTEVENT_XPS_CANCELJOB © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
38
Configuration Recommendations
WinHEC 2006 4/19/2017 8:07 PM Configuration Recommendations For Unidrv/PScript5 drivers, provide separate GPD/PPD for each filter Contributes to the modularity of filters Expose PT/PC keywords in the public Print Schema Where possible, map driver features to public Print Schema keywords Contributes to application use of features Contributes to better synchronization of driver and application settings © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
39
Setup And Installation
WinHEC 2006 4/19/2017 8:07 PM Setup And Installation © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
40
WinHEC 2006 4/19/2017 8:07 PM INF Changes XPSDrv drivers need to make a series of changes to be properly registered by the spooler CopyFiles Must include Filter Pipeline configuration file Needs Must include XPSDRV.OEM install directive Unidrv/PScript5 drivers must include XPSGPD.OEM or XPSPPD.OEM install directives © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
41
INF File Sample [Manufacturer] Microsoft [Microsoft]
WinHEC 2006 4/19/2017 8:07 PM INF File Sample [Manufacturer] Microsoft [Microsoft] "XPSDrv Sample Driver" = INSTALL_XDSMPL_FILTERS [INSTALL_XDSMPL_FILTERS] CopyFiles=XPSDrvSample,ConfigPlugin,COLORPROFILES DataFile=XDSmpl.GPD Include=NTPRINT.INF Needs=UNIDRV.OEM, XPSGPD.OEM, XPSDRV.OEM ICMProfiles=xdwscRGB.cdmp [XPSDrvSample] xdsmpl-pipelineconfig.xml ... © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
42
Windows Logo Program Requirements
WinHEC 2006 4/19/2017 8:07 PM Windows Logo Program Requirements © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
43
Premium Logo Requirement
WinHEC 2006 4/19/2017 8:07 PM Premium Logo Requirement XPSDrv implementation is a requirement for the Premium Logo for print and multi-function devices See DEV-PRNT-56 in the Windows Logo Program requirements for more information © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
44
Configuration Module Logo Requirements
WinHEC 2006 4/19/2017 8:07 PM Configuration Module Logo Requirements Must be a valid Version 3 printer driver configuration module Must support PrintTicket and PrintCapabilities All features configurable in the driver UI Minimal set keywords are required for basic functionality © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
45
Filter Pipeline Logo Requirements
WinHEC 2006 4/19/2017 8:07 PM Filter Pipeline Logo Requirements The XPSDrv driver must include a valid Filter Pipeline Configuration File Filters must conform to the rendering rules and PrintTicket processing rules defined in the XML Paper Specification Filters must not have a dependency on the CLR or the WinFX Runtime Components Filters in the XPSDrv driver filter pipeline must not display User Interface (UI) content © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
46
Call To Action Test for compatibility now! Plan for XPSDrv support
WinHEC 2006 4/19/2017 8:07 PM Call To Action Test for compatibility now! Test the GDI Print Path, XPS Print Path, and compatibility print paths Report problems immediately Plan for XPSDrv support Host-based printers Pass-through XPSDrv drivers for XPS-capable devices (direct consumption) Start implementation now Aim for Windows Vista launch availability © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
47
Call To Action Review the Windows Vista Logo Program requirements
WinHEC 2006 4/19/2017 8:07 PM Call To Action Review the Windows Vista Logo Program requirements Basic and Premium At WinHEC Practice driver dev and testing skills in XPS Printing hands on labs Ask the Experts at lunch today Visit the Microsoft Pavilion to see XPS demos Read XPSDrv Print Drivers and the Windows Color System on Attend related sessions PRI050 Inside Printer Installation on Windows Vista PRI039 Using the Windows Color System in Device Drivers PRI102 Using XPSDrv Print Drivers to Extend Windows Print Functionality PRI077 Print Driver and XPSDrv Testing in Windows Vista © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
48
Additional Resources Technical advice WDK and SDK Online
WinHEC 2006 4/19/2017 8:07 PM Additional Resources Technical advice WDK and SDK Online XPS Portal Links to relevant blogs, whitepapers, specs WHDC Printing documents WHDC Color documents Windows Digital Documents Platform Team Newsletter microsoft.com microsoft.com microsoft.com © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
49
WinHEC 2006 4/19/2017 8:07 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
50
WinHEC 2006 4/19/2017 8:07 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.