Compartir a través de


Controladores de impresión compatibles con paquetes que comparten archivos

Importante

La plataforma de impresión moderna es el medio preferido de Windows para comunicarse con impresoras. Se recomienda usar el controlador de clase de bandeja de entrada IPP de Microsoft, junto con aplicaciones de soporte técnico de impresión (PSA), para personalizar la experiencia de impresión en Windows 10 y 11 para el desarrollo de dispositivos de impresora.

Para obtener más información, consulte Plataforma de impresión moderna y la Guía de diseño de aplicaciones para compatibilidad con impresión.

Cuando más de un paquete de controladores de impresión comparte archivos de controlador, los archivos compartidos deben aislarse en un controlador principal. Por ejemplo, Unidrv es una colección de archivos que usan muchos controladores de impresión, por lo que Unidrv es un controlador principal.

Los controladores de impresión Unidrv usan las directivas Needs e Include del archivo INF, como se muestra en la siguiente sección de un archivo INF para Windows XP:

[UniDrvInstall]
CopyFiles=@OEMRES.DLL,@OEMABC.GPD
DataFile=OEMABC.GPD
DataSection=UNIDRV_DATA
Include=NTPRINT.INF
Needs=UNIDRV.OEM,TTFSUB.OEM

En Windows Vista, los controladores compatibles con paquetes deben usar la nueva palabra clave CoreDriverSections al hacer referencia a archivos Unidrv, como se muestra en la sección siguiente de un archivo INF para Windows Vista:

[UniDrvInstall_Vista]
CopyFiles=@OEMRES.DLL,@OEMABC.GPD
DataFile=OEMABC.GPD
CoreDriverSections="{D20EA372-DD35-4950-9ED8-A6335AFE79F0}, 
 UNIDRV.OEM, UNIDRV_DATA, TTFSUB.OEM"

A partir de Windows Vista, no incluya Ntprint.inf porque Unidrv se empaqueta como controlador principal y se conoce por su identificador único global (GUID). Al usar controladores principales, no use la palabra clave DataSection, sino que haga referencia a esta sección desde la palabra clave CoreDriverSections.

Los archivos de paquete de impresión principales se muestran en la tabla siguiente.

Archivo principal GUID
UNIDRV {D20EA372-DD35-4950-9ED8-A6335AFE79F0}
PSCRIPT {D20EA372-DD35-4950-9ED8-A6335AFE79F1}
PCLXL {D20EA372-DD35-4950-9ED8-A6335AFE79F2}
PLOTTER {D20EA372-DD35-4950-9ED8-A6335AFE79F4}
XPSDRV {D20EA372-DD35-4950-9ED8-A6335AFE79F5}

Se puede hacer referencia a más de una sección del controlador principal; por ejemplo:

CoreDriverSections="{GUID1}, SectionName1, SectionName2", "{GUID2}, SectionName3"

Al instalar un controlador que depende de un controlador principal, el instalador de impresión buscará la versión más reciente de ese controlador principal en el almacén de controladores e instalará la versión más reciente.

Esta sección contiene los siguientes temas:

Escritura de controladores principales

Uso de controladores principales

Ejemplo de controlador principal