Compatibilidad con controladores para impresión protegida
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.
Windows 8.1 incluye compatibilidad con la impresión protegida, que permite a los usuarios especificar un número de identificación personal (PIN) que se usa a continuación en la impresora, antes de imprimir el trabajo.
Windows 8.1 también permite a los administradores especificar un PIN predeterminado para reducir el derroche de papel relacionado con el contenido que se imprime pero que el usuario nunca recupera. En este tema se explican los cambios que hicieron posible proporcionar compatibilidad con la impresión protegida y también se describen los pasos necesarios para agregar esta compatibilidad a un controlador de impresión v4.
Cambios en el esquema de impresión
Windows 8.1 ha introducido nuevas palabras clave de esquema de impresión que puede usar en los documentos PrintTicket y PrintCapabilities para especificar la impresión protegida. Estas palabras clave se definen en el nuevo espacio de nombres printschemakeywordsv11. Este es el URI de este espacio de nombres:
https://schemas.microsoft.com/windows/2013/05/printing/printschemakeywordsv11
Para ver cómo especificar la impresión protegida en un archivo PrintTicket, consulte Archivo PrintTicket de ejemplo para la impresión con PIN. Y para ver cómo especificar la impresión protegida en un archivo PrintCapabilities, consulte Archivo PrintCapabilities de ejemplo para la impresión con PIN.
Las especificaciones se pueden descargar aquí:
Especificación del esquema de impresión 1.1
Especificación del esquema de impresión 2.0
Cambios en el controlador
Si está trabajando con un controlador v4, debe realizar cambios en el archivo de descripción de impresora genérica (GPD) o descripción de la impresora PostScript (PPD) y otros archivos de código relacionados con el controlador. Los archivos de código relacionados con el controlador afectados por los cambios se pueden clasificar de la siguiente manera:
- Archivo de configuración del controlador (GPD o PPD)
- Filtros de representación de XPS
- Extensiones de impresora
- Aplicaciones de dispositivos para UWP
O puede usar un controlador v3 con las palabras clave de esquema de impresión para la impresión protegida, siempre que realice los cambios necesarios en el código PTProvider. Pero los pasos para realizar esos cambios están fuera del ámbito de este tema.
En las secciones siguientes se proporciona más información sobre cómo implementar cambios que permitirán que el controlador v4 admita la impresión protegida.
Archivo de configuración del controlador
Puede indicar compatibilidad con la impresión protegida en el archivo DataFile para el controlador de impresión v4. El archivo DataFile es el archivo GPD o PPD, el que use el controlador. Debe especificar las directivas MinLength y MaxLength para habilitar la impresión protegida. En las tablas siguientes se describen las palabras clave pertinentes que debe agregar al archivo GPD o PPD del controlador.
Qué agregar a un archivo GPD
Si el controlador usa un archivo GPD, agregue las siguientes palabras clave nuevas mediante esta sintaxis:
Palabra clave | Descripción | Nivel | Valor permitido | Ejemplo |
---|---|---|---|---|
*JobPasscodeMinLength | Longitud mínima de la cadena numérica de PIN admitida. Este valor debe ser al menos 4 y no mayor que 15. |
Root | Cualquier valor numérico de GPD | *JobPasscodeMinLength: 4 |
*JobPasscodeMaxLength | Longitud máxima de la cadena numérica de PIN admitida. Este valor debe ser al menos 4 y no mayor que 15. Debe ser mayor o igual que el valor de *JobPasscodeMinLength. |
Root | Cualquier valor numérico de GPD | *JobPasscodeMaxLength: 9 |
Qué agregar a un archivo PPD
Si el controlador usa un archivo PPD, agregue las siguientes palabras clave nuevas mediante esta sintaxis:
Palabra clave | Descripción | Nivel | Valor permitido | Ejemplo |
---|---|---|---|---|
MSJobPasscodeMinLength | Longitud mínima de la cadena numérica de PIN admitida. Este valor debe ser al menos 4 y no mayor que 15. |
Root | "int" (QuotedValue) Es decir, el valor entero debe expresarse entre comillas. |
*MSJobPasscodeMinLength: "4" |
MSJobPasscodeMaxLength | Longitud máxima de la cadena numérica de PIN admitida. Este valor debe ser al menos 4 y no mayor que 15. Debe ser mayor o igual que el valor de *MSJobPasscodeMinLength. |
Root | "int" (QuotedValue) Es decir, el valor entero debe expresarse entre comillas. |
*MSJobPasscodeMaxLength: "9" |
Especificación de restricciones de hardware
Si tiene un dispositivo que no admite la impresión con PIN sin hardware instalable, como un disco duro, especifique estas restricciones mediante el archivo GPD o PPD. Para ello, debe editar el archivo GPD o PPD para mostrar la característica JobPasscode y las opciones JobPasscode (Activado y Desactivado). Las opciones ON/OFF deben establecer PrintSchemaKeywordMap o MSPrintSchemaKeywordMap con los valores adecuados.
Restricciones de software
No se admiten.
Restricciones de hardware
En la tabla siguiente se muestran los valores válidos para las palabras clave que debe usar si desea especificar la compatibilidad con las restricciones de impresión y hardware protegidas.
Valores válidos de palabra clave de tipo de archivo GPD *Feature JobPasscode *Option
- Apagado
- ACTIVAR
*PrintSchemaKeywordMap
- "Off"
- "On"
- "JobPasscode"
PPD *Feature JobPasscode *Option
- Apagado
- ACTIVAR
*MSPrintSchemaKeywordMap
- "Off"
- "On"
- "JobPasscode"
Ejemplos de archivos GPD y PPD
Este es un ejemplo de un archivo GPD que especifica JobPasscode con una restricción de hardware instalable.
*%
*GPDSpecVersion: "1.0"
*GPDFileVersion: "1.0"
*Include: "StdNames.gpd"
*Include: "MSxpsinc.gpd"
*ResourceDLL: "unires.dll"
*GPDFileName: "FAsmpl.gpd"
*ModelName: "Fabrikam JobPasscode Sample"
*MasterUnits: PAIR(1200, 1200)
*PrinterType: PAGE
*MaxCopies: 999
*JobPasscodeMinLength: 4
*JobPasscodeMaxLength: 15
*%******************************************************************************
*% JobPasscode
*%******************************************************************************
*Feature: JobPasscode
{
*Name: "Job Passcode"
*DefaultOption: OFF
*ConcealFromUI: TRUE
*PrintSchemaKeywordMap: "JobPasscode"
*Option: OFF
{
*PrintSchemaKeywordMap: "Off"
*Name: "Off"
}
*Option: ON
{
*PrintSchemaKeywordMap: "On"
*Name: "On"
}
}
*Feature:PrinterHardDisk
{
*rcNameID: RESDLL.PCL5ERES.430
*FeatureType: PRINTER_PROPERTY
*DefaultOption: FALSE
*Option: FALSE
{
*DisabledFeatures: LIST(JobPasscode)
*rcNameID: RESDLL.PCL5ERES.444
}
*Option: TRUE
{
*rcNameID: RESDLL.PCL5ERES.443
}
}
Debe usar la palabra clave *ConcealFromUI y establecerla en TRUE para evitar que la opción de impresión protegida se muestre involuntariamente. Consulte el ejemplo de archivo GPD anterior.
Este es un ejemplo de un archivo PPD que especifica JobPasscode con una restricción de hardware instalable.
*MSJobPasscodeMinLength: "4"
*MSJobPasscodeMaxLength: "15"
*OpenGroup: InstallableOptions/Installable Options
*% ===== Optional Hard Disk =====
*OpenUI *HardDisk/Printer Hard Disk: Boolean
*DefaultHardDisk: False
*HardDisk False/Not Installed: ""
*HardDisk True/Installed: ""
*CloseUI: *HardDisk
*CloseGroup: InstallableOptions
*% ===== JobPasscode Feature =====
*OpenUI *JobPasscode: PickOne
*DefaultJobPasscode: On
*JobPasscode On: ""
*CloseUI: *JobPasscode
*MSPrintSchemaKeywordMap: JobPasscode *JobPasscode
*MSPrintSchemaKeywordMap: JobPasscode On *JobPasscode On
*UIConstraints: *HardDisk False *JobPasscode
Como puede ver en el ejemplo de archivo PPD anterior, la palabra clave *UIConstraints indica la restricción de hardware.
El sistema operativo Windows muestra automáticamente cadenas específicas de la configuración regional para la característica de impresión protegida y sus opciones asociadas. No se puede especificar un nuevo nombre localizado para esta característica o sus opciones.
Filtros de representación de XPS
Los controladores de los dispositivos existentes necesitarán cambios en su código de representación para que estos controladores puedan convertir la representación PrintTicket del valor de PIN en un valor que el dispositivo comprenda. En general, esto requerirá la adición de código a un filtro de representación XPS existente o la adición de un nuevo filtro de representación XPS para admitir la impresión protegida. Los controladores que usan los filtros de representación XPS estándar para PCL6 y PostScript deben desarrollar un nuevo filtro de flujo para su canalización de filtro. Este nuevo filtro de flujo insertará un comando adecuado en la secuencia PDL predefinida en su canalización de filtro, después de que la secuencia pase por el filtro estándar.
Microsoft recomienda que, para minimizar los requisitos de representación en el equipo cliente o servidor, los nuevos dispositivos compatibles con XPS u OpenXPS deben admitir las nuevas palabras clave sin usar transformaciones adicionales.
Extensiones de impresora
Las extensiones de impresora deben poder mostrar un control para la impresión protegida en su interfaz de usuario de preferencias de impresión. Esto garantiza que los usuarios de aplicaciones de escritorio puedan configurar la característica de impresión protegida al usar la extensión de impresora. Microsoft está realizando cambios que permitirán que la familia de API IPrintSchemaTicket admita la impresión protegida de extensiones de impresora.
Aplicaciones de dispositivos para UWP
Microsoft también está realizando cambios para permitir que la familia de API IPrintSchemaTicket funcione con aplicaciones de dispositivos para UWP para mostrar un control para la impresión protegida en su interfaz de usuario de preferencias de impresión.