37
Inside Printer Setup Inside Printer Setup And Installation For And Installation For Windows Vista Windows Vista Adrian Lannin Adrian Lannin Program Manager Program Manager Digital Documents Digital Documents Microsoft Corporation Microsoft Corporation

Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

  • View
    222

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Inside Printer Setup Inside Printer Setup And Installation For And Installation For Windows VistaWindows Vista

Adrian LanninAdrian LanninProgram ManagerProgram ManagerDigital DocumentsDigital DocumentsMicrosoft CorporationMicrosoft Corporation

Page 2: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Agenda Agenda

Driver installation and…Driver installation and…User Account ControlUser Account Control

Printer permissionsPrinter permissions

Driver StoreDriver Store

Group Policy for DevicesGroup Policy for Devices

Printer driver installation and…Printer driver installation and…Printer Driver PackagesPrinter Driver Packages

Localized DriversLocalized Drivers

Point and PrintPoint and Print

Cross-platform InstallationCross-platform Installation

Page 3: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

User Account ControlUser Account ControlWhat is it?What is it?

All users, including All users, including administrators, run as administrators, run as standard usersstandard users

““Elevation” points are Elevation” points are provided when the provided when the user needs to perform user needs to perform an operation that an operation that truly requires truly requires administrative rightsadministrative rights

For example, running a For example, running a setup application is a setup application is a privileged operationprivileged operation

Page 4: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

User Account ControlUser Account ControlPrinter install operationsPrinter install operations

On Windows XP, installing a printer by On Windows XP, installing a printer by plug and play or point and print does not plug and play or point and print does not require administrator rightsrequire administrator rights

Installing a local printer driver requires Installing a local printer driver requires administrator rightsadministrator rights

Managing a printer, changing properties, Managing a printer, changing properties, sharing a printer is an administrator tasksharing a printer is an administrator task

Running a setup application is an Running a setup application is an administrator taskadministrator task

Page 5: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Printer Installation RightsPrinter Installation Rights

In Windows Vista, a standard user canIn Windows Vista, a standard user canUse the Add Printer Wizard (APW) to install a Use the Add Printer Wizard (APW) to install a local printerlocal printer

When there is an inbox driver available, andWhen there is an inbox driver available, and

When they are physically at the machineWhen they are physically at the machine

Page 6: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

PermissionsPermissions

The user that installs the The user that installs the printer is given the printer is given the Manage Documents Manage Documents permissionpermission

With this permission, they With this permission, they can manage and delete a can manage and delete a printer that they installedprinter that they installed

Members of the Members of the administrators group administrators group also have this also have this permission – permission – when elevatedwhen elevated

Page 7: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Install ApplicationsInstall Applications

A setup application should automatically request A setup application should automatically request permission to run with administrator rightspermission to run with administrator rights

Windows Vista uses heuristics to detect setup.exeWindows Vista uses heuristics to detect setup.exe

If Windows Vista can't determine what rights an If Windows Vista can't determine what rights an application requires, it runs the application with application requires, it runs the application with user rightsuser rights

The user must right-click and select Run as AdministratorThe user must right-click and select Run as Administrator

Recommendation: Use an application manifest Recommendation: Use an application manifest containing this attribute:containing this attribute:

More information: MSDN Developer CenterMore information: MSDN Developer Center

<requestedExecutionLevel level="requireAdministrator"uiAccess="false" />

Page 8: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Scenarios EnabledScenarios Enabled

A standard user can use the APW to A standard user can use the APW to install a printer using an inbox driverinstall a printer using an inbox driver

Useful for non-plug and play installationsUseful for non-plug and play installations

Useful when a standard user needs to print Useful when a standard user needs to print to a printer but they don’t have the driver – to a printer but they don’t have the driver – they can install a generic driver and get basic they can install a generic driver and get basic print capabilityprint capability

Setup applications automatically request Setup applications automatically request administrator permissionadministrator permission

Page 9: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Driver StoreDriver StoreWhat is it?What is it?

The The driver storedriver store is a trusted cache of is a trusted cache of inbox and third party drivers, on the local inbox and third party drivers, on the local hard diskhard disk

Third party drivers are copied from media to Third party drivers are copied from media to the driver storethe driver store

We call the driver and the files the We call the driver and the files the driver packagedriver package

All drivers are installed from the driver storeAll drivers are installed from the driver store

Because drivers in the store are trusted, Because drivers in the store are trusted, standard users may install themstandard users may install them

Page 10: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Printer Driver Install PhasesPrinter Driver Install Phases

1.1. Put the driver package in the driver storePut the driver package in the driver storeInbox drivers are already in the driver storeInbox drivers are already in the driver store

Driver is copied from mediaDriver is copied from media

Signing is checkedSigning is checked

If everything is good, driver is copied into the If everything is good, driver is copied into the driver storedriver store

This is a privileged operation!This is a privileged operation!

2.2. Install the driverInstall the driverDriver files are installed to their final location from the Driver files are installed to their final location from the driver storedriver store

This is NOT a privileged operation. Any user can This is NOT a privileged operation. Any user can install a driverinstall a driver

Page 11: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Driver VersionsDriver Versions

Driver store is a side by side storeDriver store is a side by side storeNew driver package versions co-exist with New driver package versions co-exist with old versionsold versions

Plug and Play ranking determines the driver selected Plug and Play ranking determines the driver selected for installationfor installation

Use the DriverVer directive in the INF to specify driver Use the DriverVer directive in the INF to specify driver package versionpackage version

Packages are not deleted when the drivers Packages are not deleted when the drivers are deletedare deleted

Available for reinstallation Available for reinstallation

Pnputil.exePnputil.exe – driver store utility – driver store utility

Offline supportOffline support

Page 12: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Scenario EnabledScenario Enabled

A print administrator adds a set of A print administrator adds a set of OEM printer drivers to the driver OEM printer drivers to the driver store on a corporate standard store on a corporate standard Operating System imageOperating System image

These drivers can be installed by a These drivers can be installed by a standard user because they are in the standard user because they are in the driver storedriver store

Easier deploymentEasier deployment

Cost savings/no help desk Cost savings/no help desk assistance requiredassistance required

Page 13: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Group Policy For Devices Group Policy For Devices What is it?What is it?

Two phases of device installationTwo phases of device installation1.1. Admin rights: Place the driver in the driver storeAdmin rights: Place the driver in the driver store

2.2. User: Install the driverUser: Install the driver

By using Group Policy for Devices, an By using Group Policy for Devices, an administrator can delegate the privilege required administrator can delegate the privilege required for step 1 to a standard userfor step 1 to a standard user

Why?Why?Majority of corporations will run locked-down desktops Majority of corporations will run locked-down desktops in the futurein the future

Amazing cost savings for IT departmentsAmazing cost savings for IT departments

More reliable, secure systemsMore reliable, secure systems

Page 14: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Driver Installation PolicyDriver Installation Policy

This policy allows digitally signed and This policy allows digitally signed and trusted drivers to be installed by a trusted drivers to be installed by a standard userstandard user

Digitally signed byDigitally signed byMicrosoft (e.g. WHQL, Windows)Microsoft (e.g. WHQL, Windows)

A commercially acquired certificateA commercially acquired certificate

An internally generated or a test certificateAn internally generated or a test certificate

TrustedTrustedThe certificate that signed the driver is The certificate that signed the driver is present on the machine, in the present on the machine, in the certificate storecertificate store

Page 15: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

How To Delegate Printer How To Delegate Printer Driver Installation RightsDriver Installation Rights

Page 16: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Driver RequirementsDriver Requirements

Effective for INF-based driver packagesEffective for INF-based driver packagesPrinter vendors need to ensure that their Printer vendors need to ensure that their drivers are available in driver packages that drivers are available in driver packages that install via an INFinstall via an INF

Many Windows XP printer drivers can be Many Windows XP printer drivers can be installed when this policy is enabledinstalled when this policy is enabled

Drivers that have co-installers may not workDrivers that have co-installers may not work

The co-installer does not run until an The co-installer does not run until an administrator logs inadministrator logs in

Page 17: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Scenario EnabledScenario Enabled

The print administrator uses group policy The print administrator uses group policy to delegate printer installation rights to an to delegate printer installation rights to an organizational unit (OU)organizational unit (OU)

Members of that group put signed printer Members of that group put signed printer drivers into the driver store, when the drivers into the driver store, when the driver was signed by a trusted sourcedriver was signed by a trusted source

The administrator can obtain a certificate The administrator can obtain a certificate and use it to sign driver packagesand use it to sign driver packages

Page 18: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Driver PackagesDriver PackagesWhat are they?What are they?

A Driver Package is an INF, all the files A Driver Package is an INF, all the files referenced by an INF, and the CAT filereferenced by an INF, and the CAT file

A package must be signedA package must be signed

A common problem is that some INFs A common problem is that some INFs refer to files that do not existrefer to files that do not exist

The driver store checks file dependencies The driver store checks file dependencies when the driver is added, and will not import when the driver is added, and will not import packages that have missing dependenciespackages that have missing dependencies

Page 19: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Printer Installation And Printer Installation And Driver PackagesDriver Packages

Windows Vista tries to install packages in Windows Vista tries to install packages in most casesmost cases

Local InstallationLocal Installation

Remote InstallationRemote Installation

Point and PrintPoint and Print

Web Point and PrintWeb Point and Print

When using packages is not an option, When using packages is not an option, legacy mode is usedlegacy mode is used

Page 20: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Package Point And PrintPackage Point And Print

In package point and print, the complete driver In package point and print, the complete driver package is put in the client's driver storepackage is put in the client's driver store

All components of the driver are installed on the clientAll components of the driver are installed on the client

Client installation checks signingClient installation checks signingResult is a more secure form of point and printResult is a more secure form of point and print

Windows Vista to downlevel uses "legacy" point Windows Vista to downlevel uses "legacy" point and printand print

Dependency handling requires an INF changeDependency handling requires an INF changeThis is called being "package aware"This is called being "package aware"

Page 21: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Package-AwarenessPackage-Awareness

To be package-awareTo be package-awareEither:Either: Ensure that all the files in the driver Ensure that all the files in the driver package are unique, and don't appear in package are unique, and don't appear in other packagesother packages

And use the PackageAware keywordAnd use the PackageAware keyword

Or:Or: Isolate the shared files into a separate Isolate the shared files into a separate core INFcore INF

And use the core driver keywordsAnd use the core driver keywords

Page 22: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Example INFExample INFSimple caseSimple case

If a printer driver contains a unique set If a printer driver contains a unique set of filesof files

Add the section highlighted belowAdd the section highlighted below

[DDInstall Section]CopyFiles=...

[PrinterPackageInstallation.x86]PackageAware=TRUE

[DestinationDirs]...

Page 23: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Core File DependenciesCore File Dependencies

Shared files are placed in core Shared files are placed in core printer driversprinter drivers

Using Unidrv on Windows XPUsing Unidrv on Windows XP

Using Unidrv on Windows VistaUsing Unidrv on Windows Vista

[DriverInstall][email protected],@OEMABC.GPDDataFile=OEMABC.GPDDataSection=UNIDRV_DATAInclude=NTPRINT.INFNeeds=UNIDRV.OEM,TTFSUB.OEM

[DriverInstall_Vista][email protected],@OEMABC.GPDDataFile=OEMABC.GPDCoreDriverSections="{D20EA372-DD35-4950-9ED8-A6335AFE79F0}, UNIDRV.OEM, UNIDRV_DATA, TTFSUB.OEM"

Page 24: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Sample (Partial Sample)Sample (Partial Sample)[Version]Signature="$Windows NT$"ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}Class=Printer. . .[Manufacturer]

; Models sections for x86 driver on pre-Windows Vista[Company.NTx86]"Device Description" = DriverInstall, PNP_ID, ABC_Printer

; Models section for x86 driver on Windows Vista and later[Company.NTx86.6.0]"Device Description" = DriverInstall_Vista, PNP_ID, ABC_UniDrv5_Printer

[PrinterPackageInstallation.x86]PackageAware=TRUECoreDriverDependencies={D20EA372-DD35-4950-9ED8-A6335AFE79F0}

...

[DriverInstall_Vista][email protected],@OEMABC.GPDDataFile=OEMABC.GPDCoreDriverSections="{D20EA372-DD35-4950-9ED8-A6335AFE79F0}, UNIDRV.OEM, UNIDRV_DATA, TTFSUB.OEM"

Page 25: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Scenario EnabledScenario Enabled

Printer driver vendors can ensure the Printer driver vendors can ensure the complete driver package is installed on complete driver package is installed on the client during point and printthe client during point and print

Driver signing is checked during remote Driver signing is checked during remote installations, so package-aware drivers installations, so package-aware drivers are trusted in more install scenariosare trusted in more install scenarios

Page 26: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Point and PrintPoint and PrintInterop supportInterop support

Windows Vista point and print completely Windows Vista point and print completely interoperates with prior versions of interoperates with prior versions of Microsoft WindowsMicrosoft Windows

Legacy point and print (old)Legacy point and print (old)

Package point and print (new)Package point and print (new)

Windows Vista supports package point Windows Vista supports package point and print to Windows Vista clientsand print to Windows Vista clients

Windows Vista supports legacy point and Windows Vista supports legacy point and print to pre-Windows Vista clientsprint to pre-Windows Vista clients

Page 27: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Point And PrintPoint And PrintPackage-aware driversPackage-aware drivers

Windows Vista

Windows XP

Windows Vista

Package-awarePackage-aware

Leg

acyL

egacy

Package-aware on Package-aware on Windows VistaWindows Vista

Package point and print to Package point and print to Windows Vista and later Windows Vista and later

Legacy to older versionsLegacy to older versions

LegacyLegacy

Page 28: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Package-Aware DriversPackage-Aware Drivers

Making the driver package-aware is Making the driver package-aware is fairly straightforwardfairly straightforward

When the driver is installed on When the driver is installed on Windows Vista, the platform takes care Windows Vista, the platform takes care of the interop differences down to of the interop differences down to Windows 2000Windows 2000

If the same driver package must be If the same driver package must be installed on Windows XP, then use installed on Windows XP, then use Operating System version decorations to Operating System version decorations to isolate the Windows Vista INF attributesisolate the Windows Vista INF attributes

Page 29: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Localized DriversLocalized DriversWhat are they?What are they?

All drivers have localizable resourcesAll drivers have localizable resourcesInbox Operating System components use .MUI files to Inbox Operating System components use .MUI files to store resourcesstore resources

Inbox printer drivers need embedded resources so print Inbox printer drivers need embedded resources so print drivers have the localized language embeddeddrivers have the localized language embedded

i.e. French printer DLLs contain French stringsi.e. French printer DLLs contain French strings

But printer drivers also respect MUI, so installing a But printer drivers also respect MUI, so installing a language pack results in a language switch on the language pack results in a language switch on the local machinelocal machine

Point and print clients still get the original language of the serverPoint and print clients still get the original language of the server

OEM drivers can embed multiple resources in the binaryOEM drivers can embed multiple resources in the binary

Page 30: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Scenario EnabledScenario Enabled

Language switching on the local machineLanguage switching on the local machine

Windows Vista to Windows Vista point Windows Vista to Windows Vista point and print: Language switching works for and print: Language switching works for driver packagesdriver packages

Point and print to downlevel machines Point and print to downlevel machines works as before (client gets the server works as before (client gets the server native language)native language)

Page 31: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Cross-Platform InstallationCross-Platform InstallationWhat is it?What is it?

Machines share printers with other Machines share printers with other machines that have different machines that have different processor architecturesprocessor architectures

The client needs to obtain the driver from the The client needs to obtain the driver from the server, if it doesn’t have one locallyserver, if it doesn’t have one locally

The server needs to host a driver for The server needs to host a driver for the clientthe client

Where does the hosting machine get the Where does the hosting machine get the correct driver?correct driver?

From the appropriate mediaFrom the appropriate media

Page 32: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Scenario EnabledScenario Enabled

When the user shares a printer on an x86 When the user shares a printer on an x86 computer with an x64 client, they need to computer with an x64 client, they need to add an additional driver for that clientadd an additional driver for that client

The user inserts the x64 media, and The user inserts the x64 media, and installs the driver from the diskinstalls the driver from the disk

Page 33: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Call To ActionCall To Action

Always make your driver package available as Always make your driver package available as an INFan INF

Enables so many scenarios!Enables so many scenarios!

Use the package-aware mechanism in Use the package-aware mechanism in Windows VistaWindows Vista

Package-aware drivers are preferred in point and Package-aware drivers are preferred in point and print, they are trusted, and provide more print, they are trusted, and provide more client functionalityclient functionality

If you write a setup application, use an If you write a setup application, use an application manifest so the Windows Vista will application manifest so the Windows Vista will automatically ask the user to run it with automatically ask the user to run it with elevated privilegeselevated privileges

Page 34: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Call To ActionCall To Action

Understand your company logo goals and Understand your company logo goals and review new logo requirementsreview new logo requirements

Basic and PremiumBasic and Premium

At WinHECAt WinHECPractice setup dev skills inPractice setup dev skills inPrinter Installation Hands on LabPrinter Installation Hands on Lab

Attend the Ask the Experts sessionsAttend the Ask the Experts sessions

Attend related sessionsAttend related sessionsPRI019 Developing XPSDrv Print DriversPRI019 Developing XPSDrv Print Drivers

DEV052 Installing Driver Packages in DEV052 Installing Driver Packages in Windows Vista and Windows Server LonghornWindows Vista and Windows Server Longhorn

Page 35: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

Additional ResourcesAdditional Resources

Read the Printer Package Installation white paper on Read the Printer Package Installation white paper on http://www.microsoft.com/whdc/device/print/default.mspxhttp://www.microsoft.com/whdc/device/print/default.mspx

Technical adviceTechnical advice

OnlineOnlineXPS Portal XPS Portal http://www.microsoft.com/http://www.microsoft.com/xpsxps

Links to relevant blogs, whitepapers, specs Links to relevant blogs, whitepapers, specs

WHDC Printing documents WHDC Printing documents http://www.microsoft.com/whdc/device/print/default.mspxhttp://www.microsoft.com/whdc/device/print/default.mspx

Print Server Information: Print Server Information: http://www.microsoft.com/http://www.microsoft.com/printserverprintserver

UAC development resources: UAC development resources: http://msdn.microsoft.comhttp://msdn.microsoft.com

Windows Digital Documents Platform Team Newsletter Windows Digital Documents Platform Team Newsletter https://profile.microsoft.com/RegSysProfileCenter/subscriptionwizard.aspxhttps://profile.microsoft.com/RegSysProfileCenter/subscriptionwizard.aspx?wizid?wizid=77d9786e-9500-40a4-ba20-a4c7504d83ca&lcid=1033=77d9786e-9500-40a4-ba20-a4c7504d83ca&lcid=1033

Prninfo @ microsoft.comPrninfo @ microsoft.com

Page 36: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation

© 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.

Page 37: Inside Printer Setup And Installation For Windows Vista Adrian Lannin Program Manager Digital Documents Microsoft Corporation