For Windows Server 2003, 64-bit, all versions
No hotfix is available for this issue.
For more information about similar issue on Windows Server 2003, click the following article number to view the article in the Microsoft Knowledge Base:
923357For Windows Server 2008 and Windows Vista 64-bit versions
You cannot use the RUNAS command to print from a 32-bit program in different user accounts in a single session on a computer that is running a 64-bit version of Microsoft Windows
A hotfix is available to resolve this issue. This hotfix sets the default time-out value for the period in which the Splwow64.exe process remains in memory. This default value is two minutes. Therefore, the Splwow64.exe process shuts down two minutes after the last print job in one user account closes. Additionally, you can configure this time-out value by changing the registry value in the "Registry Information" section below.For Windows Server 2008 R2 and Windows 7 64-bit versions
When you print from multiple 32-bit applications that run in different user accounts within one session, multiple Splwow64.exe instances run under each user account for that application. This means that an instance of Splwow64.exe works independently and does not interfere with other running instances. This overcomes the limitation of a only one user being able to print from a single session.
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix. Note
If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site: Note
The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.
Important Windows Vista and Windows Server 2008 hotfixes are included in the same packages. However, only one of these products may be listed on the “Hotfix Request” page. To request the hotfix package that applies to both Windows Vista and Windows Server 2008, just select the product that is listed on the page.
To apply this hotfix, the computer must run one of the following operating systems:
- Windows Server 2008 Service Pack 2 (SP2)
- Windows Server 2008
- Windows Vista Service Pack 2(SP2)
- Windows Vista Service Pack 1(SP1)
You do not have to restart the computer after you apply this hotfix.
To configure the time-out value, follow these steps.Important
This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
How to back up and restore the registry in Windows
- Click Start, then click Run.
- Type regedit , and then click OK.
- Locate and then right-click the following registry subkey:
- Point to New, and then click DWORD Value.
- Type SplWOW64TimeOutSeconds as the registry entry name, and then press Enter.
- Double-click the SplWOW64TimeOutSeconds entry that you created in step 4.
- Enter a value in the Value data box, and then click OK.
You must enter a value that is greater than 0 (zero) in the Value data
box. The value that you enter is the number of seconds that the system periodically waits while the system checks whether the Splwow64.exe process must be unloaded. The Splwow64.exe process is unloaded when the number of seconds that is specified in SplWOW64TimeOutSeconds elapses since the last 32-bit print process closed. Therefore, when a service process prints, the print capability is not released until the service closes and at least the time that you specify in the Value data
box passes. For example, if you type 15
in the Value data
box, and the last 32-bit process takes two minutes to print and close, the print capability is released between two minutes and 15 seconds and two minutes and 30 seconds. If no time-out value is specified, the default time-out value is two minutes.
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone
tab in the Date and Time
item in Control Panel.
For all supported x64-based versions of Windows Server 2008 and Windows Vista
|File name||File version||File size||Date||Time||Platform|
For all supported Itanium-based versions of Windows Server 2008
|File name||File version||File size||Date||Time||Platform|
To work around this problem, use one of the following methods.
Workaround 1Do not use the runas command to print.
Workaround 2End the Splwow64.exe process before you use the runas command to print from a 32-bit program in different user accounts in a single session.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
On a computer that is running a 64-bit version of Microsoft Windows, only one user account may print from a 32-bit program in a single session. In a single session, the user account that prints first is the only user account in which a 32-bit process can print, until a time-out occurs or the session ends. If another user account in the same session tries to print before the session ends, the user account receives an "Invalid Handle" error message. Additionally, the print request is unsuccessful.
More than one process can run in different user accounts in the same session. Examples include the following:
- Service processes that run in the same session. However, the user accounts that run the service processes are determined by the service settings.
- Processes that are initiated by using the runas command.
For more information, click the following article number to view the article in the Microsoft Knowledge Base:
Description of the standard terminology that is used to describe Microsoft software updates