2.2.3.10 Server Handle Key Values

Server Handle Key Values are used to store printer configuration data. The values named in the following table MUST be supported by print servers as follows:

  • In a call to RpcGetPrinterData or RpcGetPrinterDataEx, the pValueName parameter identifies the data that MUST be returned in the pData parameter. The value pointed to by pValueName MUST be one of the strings specified in the "Server handle key value name" column.

    The specified registry type values are defined in section 2.2.3.9.

  • If the "Read-write" column is checked, a print server SHOULD keep track of the value set by a call to RpcSetPrinterData or RpcSetPrinterDataEx in the pData parameter, and it SHOULD return the same value in a subsequent call to RpcGetPrinterData or RpcGetPrinterDataEx.

  • The "Description" column describes the printer configuration data that is associated with the server handle key value name, and in some cases it specifies print server behavior. If the "Behavior optional" column is checked, that behavior is implementation-specific and not mandatory.

    Server handle key value name/registry type

    Read-write

    Behavior optional

    Description

    "Architecture"

    REG_SZ

    A string that specifies the OS Environment Name (section 2.2.4.4), as determined by the processor architecture.

    "BeepEnabled"

    REG_DWORD

    X

    X

    If this value is nonzero, the print server issues a beep sound on the local console.

    "DefaultSpoolDirectory"

    REG_SZ

    X

    The UNC path for the directory in which the print server stores spooled print jobs.

    "DNSMachineName"

    REG_SZ

    Domain Name System (DNS) computer name.

    "DsPresent"

    REG_DWORD

    0x0001 if the print server is joined to a domain with directory services, zero if not.

    "DsPresentForUser"

    REG_DWORD

    0x0001 if the user is logged on to a domain with directory services, zero if not.

    "EventLog"

    REG_DWORD

    X

    X

    A bit mask specifying which events for a print server to log in its internal event log. It is a bitwise OR of zero or more of the Event Log Flags (section 2.2.3.10.4).

    "MajorVersion"

    REG_DWORD

    The major OS version. See dwMajorVersion in SPLCLIENT_INFO Members (section 2.2.1.3.7) for details.

    "MinorVersion"

    REG_DWORD

    The minor OS version. See dwMinorVersion in SPLCLIENT_INFO Members (section 2.2.1.3.7) for details.

    "NetPopup"

    REG_DWORD

    X

    X

    If this value is nonzero, the print server MAY alert the print client of the status of a print job.<153>

    "NetPopupToComputer"

    REG_DWORD

    X

    X

    If this value is nonzero, the print server MAY alert the print client of changes to the status of a print job.<154>

    "OSVersion"

    REG_BINARY

    OS version information, in the form of an OSVERSIONINFO structure (section 2.2.3.10.1).

    "OSVersionEx"

    REG_BINARY

    Extended OS version information, in the form of an OSVERSIONINFOEX structure (section 2.2.3.10.2).

    "PortThreadPriority"

    REG_DWORD

    X

    X

    The current priority of the thread on which the print server sends data to printers. This value MUST be one of the Thread Priority values (section 2.2.3.10.6) constants.

    This key name MAY be used remotely.<155>

    "PortThreadPriorityDefault"

    REG_DWORD

    X

    The default priority of the thread on which the print server sends data to printers. This value MUST be one of the Thread Priority values constants.

    This key name MAY be used remotely.<156>

    "RemoteFax"

    REG_DWORD

    0x0001 if the Microsoft Fax printer driver supports remote clients, zero otherwise. If this value is zero, print client connections to the Microsoft Fax printer driver SHOULD NOT be made.

    "RestartJobOnPoolEnabled"

    REG_DWORD

    X

    A nonzero value indicates that SPLREG_RESTART_JOB_ON_POOL_ERROR is enabled.

    This key name MAY be used remotely.<157>

    "RestartJobOnPoolError"

    REG_DWORD

    X

    The minimum time, in seconds, when a print job is restarted on another port after an error occurs.

    This key name MAY be used remotely.<158>

    "RetryPopup"

    REG_DWORD

    X

    X

    If this value is nonzero, the print server MAY offer the print client an option to retry a print job.<159>

    This key name MAY be used remotely.<160>

    "SchedulerThreadPriority"

    REG_DWORD

    X

    X

    The current priority of the thread on which the print server schedules jobs for sending to printers. This value MUST be one of the Thread Priority values constants.

    This key name MAY be used remotely.<161>

    "SchedulerThreadPriorityDefault"

    REG_DWORD

    X

    The default priority of the thread on which the print server schedules jobs for sending to printers. This value MUST be one of the Thread Priority values constants.

    This key name MAY be used remotely.<162>

    "W3SvcInstalled"

    REG_DWORD

    0x0001 if the web printing services are installed on the machine that hosts the print server.

    "PrintDriverIsolationGroups"

    REG_SZ

    X

    X

    A string that specifies groups of printer driver names.<163> The printer drivers in each group are executed in the same process, but printer drivers in different groups are executed in separate processes. The format of the string is as follows:

    • Printer driver names within a group are separated from each other by a single backslash "\".

    • Groups are separated from each other by two backslashes "\\".

    • The last group is terminated by a null character.

    "PrintDriverIsolationTimeBeforeRecycle"

    REG_DWORD

    X

    X

    A time in milliseconds that specifies the maximum time span a printer driver isolation process can be used before it is shut down and restarted; the shut down and restart sequence reclaims memory potentially leaked by drivers.<164>

    "PrintDriverIsolationMaxobjsBeforeRecycle"

    REG_DWORD

    X

    X

    A count that specifies the maximum number of operations a printer driver isolation process is used before it is shut down and restarted; the shut down and restart sequence reclaims memory potentially leaked by drivers.<165>

    "PrintDriverIsolationIdleTimeout"

    REG_DWORD

    X

    X

    A time in milliseconds that specifies the maximum time a printer driver isolation process remains idle before it is shut down.<166>

    "PrintDriverIsolationExecutionPolicy"

    REG_DWORD

    X

    An integer that specifies if printer driver isolation is enabled on the print server.

    0x00000000 indicates that printer driver isolation is disabled.

    0x00000001 indicates that printer driver isolation is enabled.<167>

    "PrintDriverIsolationOverrideCompat"

    REG_DWORD

    X

    An integer value that specifies if the print server overrides the printer driver's indication of printer driver isolation compatibility.<168>

    0x00000001 indicates that the print server runs the printer driver in isolation mode, even if they do not indicate that they are compatible through the PRINTER_DRIVER_SANDBOX_ENABLED driver attribute flag.

    "V4DriverDisallowPrinterUIApp"

    REG_DWORD

    X

    X

    An integer value that specifies if printer drivers with a driver version (cVersion in section 2.2.1.3.1) of 0x00000004 are enabled to run their printer UI applications, if any.<169>

    If the value is not configured, or if the value is set to 0x00000000, running of printer UI applications is enabled.

    If the value is set to 0x00000001, running of printer UI applications is disabled.

    This value has no effect on drivers with a driver version other than 0x00000004. By default this value is not configured.