Debugging Pipeline Components

This section contains a few tips to aid in debugging custom pipeline components.

Ee811753.note(en-US,CS.20).gif Note

  • Like all debug settings, these settings should be removed before production.

Debugging Scriptor Pipeline Components

If you are debugging the scriptor component (Progid = Commerce.Scriptor), you need register it as a COM+ application, and enable Just In Time debugging.

Use one of the following two methods for debugging scriptor pipeline components.

Method 1: Use this method if you are logged into the console of the server when the pipeline is executing

  • Register the component in a COM+ server application (out-of-process)
  • Enable Just-In-Time (JIT) debugging
  • Restart IIS by using the IISReset command.

Method 2: Use this method if you are logged on to the server remotely using Terminal server

  • If the IIS anonymous identify is an account that can be logged on interactively, then log on using the account and set the following Registry key as shown:

    HKEY_CURRENT_USER\Software\Microsoft\Windows Script\Settings\JITDebug = 1.

    Otherwise, set the following Registry key:

    HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script\Settings\JITDebug = 1

  • Set the application to run in low process isolation (do not use medium isolation).

  • Restart IIS by using the IISReset command.

For information about how the JITDebug registry value is located in different configurations, see the Knowledge Base article Q269827 “PRB: VBScript 'STOP' Statement in .wsc Components Does Not Start Script Debugger When Called from ASP” at https://go.microsoft.com/fwlink/?LinkId=15098.

Following are instructions for performing these steps outlined in these methods.

To register the component in a COM+ server application (out-of-process)

  1. Click Start, point to Programs, point to Administrative Tools, and then click Component Services.

  2. Go to Console\Component Services\Computers\My Computer\COM+ Applications.

  3. Right-click the COM+ Applications folder, and select \New\Application.

    The COM Application Install Wizard appears.

  4. Click Next, and then select Create an empty application.

  5. Type a name for the new application, for example, Commerce Scriptor Application.

  6. Select Server Application, and then click Next.

  7. In the Set Application Identity dialog box, accept the default setting (Interactive User) if the IIS anonymous identity is an account that can be logged on interactively. Otherwise, select the appropriate user.

  8. Click Next, and then click Finish.

To import the scriptor component into the newly created application

  1. Click the Components subkey.

  2. Right-click the Components folder, select New, and then select Component.

    The COM Component Install Wizard appears.

  3. Click Next, and then click Import component(s) that are already registered.

  4. Click the Choose Components to Import tab, and select Commerce.Scriptor.1.

  5. Click Next, and then click Finish.

The "Commerce.Scriptor.1" component appears under the "Components" subkey.

To enable the dumb host JIT (Just In Time) debugging Registry key

Ee811753.caution(en-US,CS.20).gifCaution

  • You must not leave dumb host JIT debugging enabled on production servers that run unattended in a data center. When you enable dumb host JIT debugging, any script runtime or compile errors that occur in Windows Script hosts (such as the Commerce.Scriptor component) causes the server execution to stop until you dismiss the JITDebug dialog box on the server console.
  1. If the IIS anonymous identity is an account that can be logged on interactively, do the following:

    • In the Registry, go to HKEY_CURRENT_USER\Software\Microsoft\Windows Script\Settings.
    • Add the DWORD value "JITDebug" = . If the DWORD value is already there, go to the next step.
    • Set the key to 1: HKEY_CURRENT_USER\Software\Microsoft\Windows Script\Settings\JITDebug = 1.
  2. If the account cannot be logged on interactively, set the following value to 1:

    HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script\Settings\JITDebug = 1

  3. Set the application to run in low process isolation.

  4. Restart IIS by using the IISReset command.

Debugging Visual Basic Pipeline Components

Ensure that the Visual Basic debugger process (VB.exe) and the process hosting the pipeline component (inetinfo.exe or dllhost.exe) are running under the same user account. This enables VB.exe to intercept the Visual Basic pipeline component calls and debug them. The simplest way to accomplish this is to change the IIS anonymous user impersonation account to that of the currently logged on user.

See Also

MinMaxShip Sample Pipeline Component

Copyright © 2005 Microsoft Corporation.
All rights reserved.