JSConstraintsDebug
JSConstraintsDebug(JSConstraintsDebug.exe)는 V4 프린터 드라이버를 개발하는 동안 JavaScript 제약 조건에 대한 디버깅 지원을 제공하는 명령줄 도구입니다.
JSConstraintsDebug는 어디에서 다운로드할 수 있나요? |
---|
JSConstraintsDebug.exe Microsoft WDK(Windows 드라이버 키트)에 포함되어 있습니다. WDK를 가져오는 방법에 대한 자세한 내용은 Windows 드라이버 키트 다운로드를 참조하세요. |
이 도구는 사용자가 제공한 인쇄 티켓에 대해 대상 드라이버의 JavaScript 제약 조건에서 다음 관련 진입점 API를 각각 실행합니다.
실행하는 동안 도구는 Visual Studio와 같은 적절한 IDE 디버거를 묻는 메시지를 표시합니다. 선택하면 제약 조건 소스 코드가 JavaScript 디버거 문에서 열리고 중지됩니다.
JS 제약 조건 파일을 디버그하려면 다음 단계를 수행합니다.
명령 프롬프트 창을 엽니다.
JSConstraintsDebug.exe 도구를 실행하고 최소한 프린터 이름과 테스트 인쇄 티켓 경로를 지정합니다.
사용하려는 디버깅 도구를 선택합니다.
사용자 모드에서 JSConstraintsDebug 실행
JS 함수의 디버깅을 사용하려면 상승된 권한이 필요합니다. 사용자 모드에서 실행하려면 JSConstraintsDebug.exe 실행하기 전에 다음 레지스트리 키를 설정해야 합니다.
키 이름 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print |
값 이름 |
EnableJavaScriptDebugging |
형식 |
DWORD |
값 |
1 |
JavaScript 디버거 문
중단점은 디버거 문을 사용하여 JavaScript 원본에서 만들 수 있습니다. Visual Studio에서 작업을 일시 중지하면 단계별 디버깅이 모두 허용됩니다. 이러한 문은 JavaScript 제약 조건 API에 삽입할 수 있습니다.
예:
function validatePrintTicket(PrintTicket, scriptContext)
{
debugger; // debug tool will pause at this breakpoint
...
}
JSConstraintsDebug 명령 구문
JSConstraintsDebug <PrinterName> <PrintTicket> [MergePrintTicket] [Constraints]
명령 매개 변수
매개 변수 | Description |
---|---|
PrinterName |
필수 사항입니다. JS 제약 조건 소스 파일을 포함하는 인쇄 드라이버의 문자열 이름을 지정합니다. 이 드라이버는 모든 디버깅 작업에 사용됩니다. |
Printticket |
필수 사항입니다. 유효성을 검사할 인쇄 티켓 XML 파일의 경로와 이름을 지정합니다. |
MergePrintTicket |
선택 사항입니다. 병합 작업의 유효성을 검사하는 데 사용할 인쇄 티켓 XML 파일의 경로와 이름을 지정합니다. 이 매개 변수를 설정하지 않으면 기본 DevMode가 인쇄 티켓으로 변환되고 병합 및 유효성 검사 API에 전달됩니다. |
제약 조건 |
선택 사항입니다. 디버깅하기 전에 대상 프린터 드라이버에 있는 기존 제약 조건 원본 파일을 대체할 JavaScript 제약 조건 파일의 경로와 이름을 지정합니다. |
참고 Constraints 매개 변수를 사용하여 제약 조건 파일을 지정하면 대상 드라이버의 기존 소스 코드를 덮어씁니다.
예
알려진 테스트 인쇄 티켓에 대해 인쇄 드라이버를 디버그합니다.
JSConstraintsDebug “Contoso Printer” PrintTicket.xml
알려진 테스트 인쇄 티켓에 대해 새 제약 조건 소스 파일을 사용하여 인쇄 드라이버를 디버그합니다.
JSConstraintsDebug “Contoso Printer” PrintTicket.xml Constraints.js
두 사용자 지정 인쇄 티켓 간의 병합을 테스트하고 작업의 유효성을 검사합니다.
JSConstraintsDebug “Contoso Printer” PrintTicket.xml PrintTicket2.xml