Compartir a través de


JSConstraintsDebug

JSConstraintsDebug (JSConstraintsDebug.exe) es una herramienta de línea de comandos que proporciona compatibilidad de depuración con restricciones de JavaScript al desarrollar un controlador de impresora V4.

¿Dónde puedo descargar JSConstraintsDebug?

JSConstraintsDebug.exe se incluye en el Kit de controladores de Microsoft Windows (WDK). Para obtener información sobre cómo obtener el WDK, consulta Descargas del Kit de controladores de Windows.

La herramienta ejecuta cada una de las siguientes API de punto de entrada pertinentes en las restricciones de JavaScript del controlador de destino en el vale de impresión proporcionado por el usuario:

PTGetPrintCapabilities

PTConvertDevModeToPrintTicket

TConvertPrintTicketToDevMode

PTMergeAndValidatePrintTicket

Durante la ejecución, la herramienta solicitará un depurador ide adecuado, como Visual Studio. Tras la selección, el código fuente de restricciones se abrirá y se detendrá en una instrucción del depurador de JavaScript.

Para depurar archivos de restricciones JS, siga estos pasos:

  1. Abra una ventana de símbolo del sistema.

  2. Ejecute la herramienta JSConstraintsDebug.exe y especifique, como mínimo, el nombre de la impresora y la ruta de acceso a un vale de impresión de prueba.

  3. Elija la herramienta de depuración que desea usar.

Ejecución de JSConstraintsDebug en modo de usuario

Se requieren privilegios elevados para habilitar la depuración de funciones JS. Para ejecutarse en modo de usuario, se debe establecer la siguiente clave del Registro antes de ejecutar JSConstraintsDebug.exe:

Nombre de clave

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print

Nombre del valor

EnableJavaScriptDebugging

Tipo

DWORD

Value

1

Instrucciones del depurador de JavaScript

Los puntos de interrupción se pueden crear en el origen de JavaScript mediante la instrucción del depurador. Esto pausará la operación en Visual Studio, lo que permitirá la depuración paso a paso. Estas instrucciones se pueden insertar en cualquiera de las API de restricción de JavaScript.

Por ejemplo:

function validatePrintTicket(PrintTicket, scriptContext)
{
    debugger; // debug tool will pause at this breakpoint
    ...
}

Sintaxis del comando JSConstraintsDebug

JSConstraintsDebug <PrinterName> <PrintTicket> [MergePrintTicket] [Constraints]

Parámetros de comando

Parámetros Descripción

PrinterName

Necesario. Especifica el nombre de cadena de un controlador de impresión que contiene el archivo de origen de restricciones JS. Este controlador se usará para todas las operaciones de depuración.

PrintTicket

Necesario. Especifica la ruta de acceso y el nombre de un archivo XML de vale de impresión que se va a validar.

MergePrintTicket

Opcional. Especifica la ruta de acceso y el nombre de un archivo XML de vale de impresión que se usará para validar una operación de combinación.

Si este parámetro no está establecido, el DevMode predeterminado se convertirá en un vale de impresión y se pasará a la API Merge y Validate.

Restricciones

Opcional. Especifica la ruta de acceso y el nombre de un archivo de restricciones de JavaScript que reemplazarán el archivo de origen de restricciones existente que se encuentra en el controlador de impresora de destino antes de la depuración.

Nota Al especificar un archivo de restricciones con el parámetro Constraints, se sobrescribirá el código fuente existente en el controlador de destino.

Ejemplos

Depurar un controlador de impresión en un vale de impresión de prueba conocido.

JSConstraintsDebug “Contoso Printer” PrintTicket.xml

Depure un controlador de impresión con un nuevo archivo de origen de restricciones en un vale de impresión de prueba conocido.

JSConstraintsDebug “Contoso Printer” PrintTicket.xml Constraints.js

Pruebe las operaciones de combinación y validación entre dos vales de impresión personalizados.

JSConstraintsDebug “Contoso Printer” PrintTicket.xml PrintTicket2.xml