共用方式為


JSConstraintsDebug

JSConstraintsDebug (JSConstraintsDebug.exe) 是命令列工具,可在開發V4 印表機驅動程式時提供JavaScript 條件約束的偵錯支援。

我可以在哪裡下載 JSConstraintsDebug?

JSConstraintsDebug.exe包含在 Microsoft Windows Driver Kit (WDK) 中。 如需取得 WDK 的相關資訊,請參閱 Windows 驅動程式套件下載

此工具會針對使用者提供的列印票證,在目標驅動程式的 JavaScript 條件約束上執行下列每個相關的進入點 API:

PTGetPrintCapabilities

PTConvertDevModeToPrintTicket

TConvertPrintTicketToDevMode

PTMergeAndValidatePrintTicket

在執行期間,工具會提示輸入適當的 IDE 偵錯工具,例如 Visual Studio。 選取時,會在 JavaScript 偵錯工具語句開啟和停止條件約束原始程式碼。

若要對 JS 條件約束檔案進行偵錯,請遵循下列步驟:

  1. 開啟命令提示字元視窗。

  2. 執行JSConstraintsDebug.exe工具,並至少指定印表機名稱和測試列印票證的路徑。

  3. 選擇您想要使用的偵錯工具。

在使用者模式中執行 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]

命令參數

參數 描述

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