关于Svchost.exe的说明及可能出现的问题解答

类别:软件工程 点击:0 评论:0 推荐:

Windows 2000 中的 Svchost.exe 说明

Svchost.exe 是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。Svchost.exe 文件位于 %SystemRoot%\System32 文件夹中。启动时,Svchost.exe 将检查注册表的服务部分,以构建需要加载的服务的列表。可以同时运行多个 Svchost.exe 实例。每个 Svchost.exe 会话可以包含一组服务,以便可以根据 Svchost.exe 的启动方式和位置运行不同的服务。这样可以更好地进行控制和调试。

Svchost.exe 组由以下注册表项标识:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost
此注册表项下的每个值都代表单独的 Svchost 组,并在您查看活动进程时作为单独的实例显示。每个值均为 REG_MULTI_SZ 值,并且包含在该 Svchost 组下面运行的服务。每个 Svchost 组都可以包含一个或多个从以下注册表项(该注册表项的 Parameters 项包含一个 ServiceDLL 值)中提取的服务名称:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\服务

查看在 Svchost 中运行的服务的列表:
1. 从 Windows 2000 安装光盘的 Support\Tools 文件夹中的 Support.cab 文件中提取 Tlist.exe 实用工具。
2. 在开始菜单上,单击运行,然后键入 cmd。
3. 将文件夹更改到您从中提取 Tlist.exe 实用工具的位置。
4. 键入 tlist -s。

Tlist.exe 显示活动进程的列表。-s 开关显示每个进程中活动服务的列表。有关该进程的更多信息,请键入 tlist pid。

以下 Tlist 输入示例显示有两个 Svchost.exe 实例正在运行:
0 System Process
8 System
132 smss.exe
160 csrss.exe Title:
180 winlogon.exe Title:NetDDE Agent
208 services.exe Svcs:AppMgmt,Browser,Dhcp,dmserver,Dnscache,Eventlog,lanmanserver,
     LanmanWorkstation,LmHosts,Messenger,PlugPlay,ProtectedStorage,seclogon,
     TrkWks,W32Time,Wmi
220 lsass.exe Svcs:Netlogon,PolicyAgent,SamSs
404 svchost.exe Svcs:RpcSs
452 spoolsv.exe Svcs:Spooler
544 cisvc.exe Svcs:cisvc
556 svchost.exe Svcs:EventSystem,Netman,NtmsSvc,RasMan,SENS,TapiSrv
580 regsvc.exe Svcs:RemoteRegistry
596 mstask.exe Svcs:Schedule
660 snmp.exe Svcs:SNMP
728 winmgmt.exe Svcs:WinMgmt
852 cidaemon.exe Title:OleMainThreadWndName
812 explorer.exe Title:Program Manager
1032 OSA.EXE Title:Reminder
1300 cmd.exe Title:D:\WINNT5\System32\cmd.exe - tlist -s
1080 MAPISP32.EXE Title:WMS Idle
1264 rundll32.exe Title:
1000 mmc.exe Title:Device Manager
1144 tlist.exe
此示例的两种组合的注册表设置如下所示:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost:
netsvcs:Reg_Multi_SZ:EventSystem Ias Iprip Irmon Netman Nwsapagent Rasauto Rasman Remoteaccess SENS Sharedaccess Tapisrv Ntmssvc
rpcss :Reg_Multi_SZ:RpcSs


适用于:
• Microsoft Windows 2000 Server
• Microsoft Windows 2000 Advanced Server
• Microsoft Windows 2000 Professional Edition
---------------------------------------------------------


Windows XP 中的 Svchost.exe 说明

Svchost.exe 是从动态链接库 (DLL) 中运行的服务的通用主机进程名称。

Svchost.exe 文件位于 %SystemRoot%\System32 文件夹中。启动时,Svchost.exe 将检查注册表的服务部分,以构建需要加载的服务的列表。Svchost.exe 的多个实例可同时运行。每个 Svchost.exe 会话可以包含一组服务,以便可以根据 Svchost.exe 的启动方式和位置的不同运行不同的服务。这样可以更好地进行控制,且更加便于调试。

Svchost.exe 组由以下注册表项标识:
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost
此注册表项下的每个值都代表单独的 Svchost 组,并在您查看活动进程时作为单独的实例显示。每个值均为 REG_MULTI_SZ 值,并且包含在该 Svchost 组下面运行的服务。每个 Svchost 组都可以包含一个或多个从以下注册表项提取的服务名称,该注册表项的参数项包含一个 ServiceDLL 值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\服务
要查看在 Svchost 中运行的服务的列表,请执行以下操作:
1. 单击 Windows 任务栏上的开始,然后单击运行。
2. 在打开框中,键入 CMD,然后按 ENTER 键。
3. 键入 Tasklist /SVC,然后按 ENTER 键。
Tasklist 命令显示活动进程的列表。/SVC 命令开关显示每个进程中活动服务的列表。有关进程的详细信息,请键入以下命令,然后按 ENTER 键:
Tasklist /FI "PID eq 进程 ID"(带引号)
以下的 Tasklist 命令输出示例显示正在运行的 Svchost.exe 的两个实例。
 Image Name         PID      Services
   ========================================================================
System Process        0     N/A
System                8     N/A
Smss.exe            132     N/A
Csrss.exe           160     N/A
Winlogon.exe        180     N/A
Services.exe        208     AppMgmt,Browser,Dhcp,Dmserver,Dnscache,
Eventlog,LanmanServer,LanmanWorkstation,
LmHosts,Messenger,PlugPlay,ProtectedStorage,
Seclogon,TrkWks,W32Time,Wmi
Lsass.exe            220    Netlogon,PolicyAgent,SamSs
Svchost.exe          404    RpcSs
Spoolsv.exe          452    Spooler
Cisvc.exe            544    Cisvc
Svchost.exe          556    EventSystem,Netman,NtmsSvc,RasMan,
SENS,TapiSrv
Regsvc.exe           580    RemoteRegistry
Mstask.exe           596    Schedule
Snmp.exe             660    SNMP
Winmgmt.exe          728    WinMgmt
Explorer.exe         812    N/A
Cmd.exe             1300    N/A
Tasklist.exe        1144    N/A
    
此示例的两种组合的注册表设置如下所示:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost:
Netsvcs:Reg_Multi_SZ:EventSystem Ias Iprip Irmon Netman Nwsapagent Rasauto Rasman Remoteaccess SENS Sharedaccess Tapisrv Ntmssvc
RApcss :Reg_Multi_SZ:RpcSs


适用于:
• Microsoft Windows XP Professional Edition

---------------------------------------------------------

 

**********************************************************
Windows 2000 的 Spoolsv.exe 中发生访问冲突
症状
在使用“简单网络管理协议”(SNMP) 的基于 Windows 2000 的打印服务器上的 Spoolsv.exe 中可能会发生访问冲突。
原因
SNMP 绑定列表中错误地计算了一个大小值。

安装Windows 2000 Service Pack 2以上版本。


**********************************************************

Spoolsv.exe 或“打印子系统不可用”消息 问题描述

启动 Windows Server 2003 打印服务器时,可能接收到以下错误消息:Spoolsv.exe 生成了一个错误。

而且,如果尝试查看打印机属性,可能接收到显示“打印子系统不可用”的错误消息。

问题原因

后台打印服务可能已经停止。如果服务器运行 Windows Server 2003 而使用为 Windows 98 或 Windows NT 设计的打印启动程序,则也可能发生这种问题。

问题解决方案

1.

开启注册表编辑器 (RegEdt32.exe)。

2.

定位到注册表以下键并将之删除:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\ Control\Print\Printers\

<Trouble Printer>

3.

退出注册表编辑器。


**********************************************************


在 Windows 2000 终端服务器上打印后台处理程序故障导致 Winlogon.exe 和 Spoolsv.exe 进程 CPU 占用率很高
症状
当您监视支持用户从终端服务会话进行打印的基于 Windows 2000 的终端服务器(启用了终端服务器的服务器)的 CPU 使用情况时,会注意到服务器的 Winlogon.exe 和 Spoolsv.exe 进程的 CPU 负载很高。
原因
当终端服务器上的打印后台处理程序停止响应时,就会出现此问题。打印后台处理程序故障可以在终端服务器上的应用程序事件日志或 Drwtsn32.log 中的信息得到确认。日志指出 Spoolsv.exe 进程异常终止。
注意 Drwtsn32.log 文件路径为 驱动器:\Documents and Settings\All Users\Documents\DrWatson\Drwtsn32.log。
安装Windows 2000 Service Pack 4
替代方法
如果您确定打印后台处理程序不稳定的原因并将其消除,则可以避免出现此问题。为此,请执行消除过程:删除第三方打印机驱动程序,删除端口监视程序,或者检查在打印后台处理程序发生故障时创建的 User.dmp 文件的内容。
注意 默认的 User.dmp 文件路径为 驱动器:\Documents and Settings\All Users\Documents\DrWatson。

 

**********************************************************

在与 Lexmark 打印机相连的计算机上出现"Spoolsv.exe Has Generated an Error"错误消息
症状
当您启动运行 Windows 2000 并且连接到 Lexmark 打印机的计算机时,可能会收到以下错误信息:
Spoolsv.exe has generated an error
"打印后台处理程序"服务可能已停止。另外,如果您尝试查看打印机的属性,可能会收到指示打印子系统不可用的错误信息。
原因
如果您的基于 Windows 2000 的计算机所使用的 Lexmark 打印机驱动程序是设计用于 Microsoft Windows 98 或 Microsoft Windows NT 的,则会发生此问题。
解决方案
警告:"注册表编辑器"使用不当可造成严重问题,这些问题可能需要重新安装操作系统。Microsoft 不保证能够解决因为"注册表编辑器"使用不当而产生的问题。使用"注册表编辑器"需要您自担风险。

要解决此问题,请移除 Lexmark 打印机的注册表项,然后确保只使用设计用于 Windows 2000 的 Lexmark 打印机驱动程序:1. 启动"注册表编辑器"(Regedit.exe)。
2. 在注册表中找到并移除下面的项:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print\Printers\ Lexmark printer
3. 退出"注册表编辑器",然后重新启动计算机。
4. 确保只使用设计用于 Windows 2000 的 Lexmark 打印机驱动程序。

此问题可能也适用于其他打印机制造商提供的打印机驱动程序。

 

**********************************************************

BitWare 引起 Windows 系统中的 Spoolsv.exe 程序错误
症状
启动计算机后尝试使用打印机或启动与打印机交互的程序时,您可能会收到以下错误信息:
Spoolsv.exe has generated errors and will be closed by Windows.You will need to restart the program.An error log is being created.
后台打印程序服务随后停止运行,但可以重新启动。在后台打印程序停止运行的同时会生成以下错误信息:
Printer operation cannot continue due to lack of resources.
原因
如果安装了 BitWare for Windows,就会出现这一现象。BitWare 当前版本为 3.30 和 7.0,它们不能与本文“适用于”一节列出的 Windows 版本完全兼容。要查看 BitWare 是否在运行,请在“任务管理器”中查找 Bwagent.exe 或 Bwprnmon.exe 的实例。
解决方案
警告:“注册表编辑器”使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因“注册表编辑器”使用不当而导致的问题。使用“注册表编辑器”需要您自担风险。
卸载 BitWare 软件是最好的做法,但并不是所有版本都具备卸载功能。

如果未提供卸载功能,您可以手动删除所有引用 BitWare 的注册表项和驱动程序: 1. 启动注册表编辑器 (Regedt32.exe)。
2. 在注册表中的以下项中找到引用 BitWare 的项:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Environments\Windows NT x86\Drivers\Version-2

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Monitors

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Printers 
3. 在编辑菜单上,对每一个 BitWare 子树单击删除。
4. 退出“注册表编辑器”。
5. 从 %SystemRoot%\System32\Spool\Drivers\W32x86 文件夹中删除所有 BitWare 驱动程序。
6. 重新启动 Windows。

 

**********************************************************

错误消息:Spoolsv.exe Has Generated Errors and Will Be Closed by Windows
症状
如果您打开"打印机"窗口或试图从任何程序打印,可能会收到以下错误信息之一:
Spoolsv.exe has generated errors and will be closed by Windows.
或者
Printer operation cannot continue due to lack of resources.
或者
Subsystem unavailable.
原因
如果计算机上安装的打印机驱动程序已损坏,则会发生此问题。
解决方案
警告:"注册表编辑器"使用不当可造成严重问题,这些问题可能需要重新安装操作系统。Microsoft 不保证能够解决因为"注册表编辑器"使用不当而产生的问题。使用"注册表编辑器"需要您自担风险。

要解决此问题,请移除打印机和打印机驱动程序,然后删除某些注册表项下的项。请按照下列步骤操作:1. 如果可能,移除"打印机"窗口中列出的所有打印机。

要移除打印机,请右击"打印机"窗口中的打印机,单击删除,然后单击是确认删除。
2. 在"打印机"窗口中的文件菜单上,单击服务器属性。
3. 在驱动程序选项卡上,移除所有已安装的打印机驱动程序。

要移除打印机驱动程序,请单击驱动程序,单击删除,然后单击是确认。
4. 启动"注册表编辑器"(Regedit.exe)。
5. 导出以下注册表项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print
6. 删除以下注册表项下列出的所有项(不要删除注册表项本身):
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86\Drivers\Version-2
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86\Drivers\Version-3
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print\Environments\Windows NT x86\Drivers\Version-2
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print\Environments\Windows NT x86\Drivers\Version-3
7. 删除以下注册表项下列出的所有非默认项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print\Monitors
默认监视器列表中包括:

• AppleTalk 打印设备(当安装了"Macintosh 服务"时)
• BJ 语言监视器
• 本地端口
• PJL 语言监视器
• 标准 TCP/IP 端口
• USB 监视器
• Windows NT 传真监视器(当安装了"传真调制解调器"时)

有关哪些项不是默认设置的其他信息,请单击下面的文章编号,查看 Microsoft 知识库中的相应文章:
260142 How to Troubleshoot Windows Printing Problems(如何解决 Windows 打印问题)
8. 默认监视器列表中包括:删除以下注册表项下列出的所有项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print\Printers
9. 默认监视器列表中包括:退出"注册表编辑器"。
10. 默认监视器列表中包括:重新启动计算机,然后重新安装必要的打印机。


 
**********************************************************

在 Spoolsv.exe 中发生访问冲突
症状
您可能会收到 Spoolsv.exe 中的 Dr. Watson 随机错误信息(访问冲突)。
解决方案
安装Microsoft Windows 2000 Service Pack 4

 

**********************************************************

Windows 后台打印程序的性能增强
后台打印程序增强功能: • 现在,Localmon.dll 文件(端口监视器)和 Winprint.dll 文件(打印处理器)已经合并到 Localspl.dll 文件(本地打印提供程序)中。这减少了后台打印程序在启动时需要加载的 .dll 文件的数量。 
• 在后台打印程序启动时,Spoolsv.exe 文件(路由器)从 Spoolss.dll 文件中分离。因此,后台打印程序在第一次启动后,仅在需要初始化时才加载 Spoolss.dll 文件。这可能在 90 分钟后进行,也可能在客户端请求(例如,OpenPrinter 或 EnumPrinters)出现时进行。通过最大限度地减小 Spoolss.dll 文件启动时需要的所有 .dll 文件的加载操作,启动时间得到了显著缩短。
• 对 Userinit.exe 文件所作的一项修改,将后台打印程序的初始化推迟到了 Windows 用户界面初始化后。
• 新后台打印程序在启动时只执行 4 个磁盘输入/输出 (I/O) 操作,读取 55 KB (K),然后在初始化时再读取 15K:一个是在 Advapi32.dll 文件中,其余的是在 Pagefile.sys 文件(它从中又读取 88K)中。其他 .dll 文件稍后才会读取。与旧的后台打印程序的 115 个磁盘 I/O 操作(总共读取 994K)相比,这是一个显著的改进。

注意:这只是考虑了直接用于 Spoolsv.dll 进程的 I/O 操作,而没有考虑与其他进程的互操作带来的 I/O 节省,也没有考虑某些中央处理器 (CPU) 节省。

 

**********************************************************

如何排查 Windows 2000 打印问题
添加 Internet 连接共享后无法打印到网络打印机
将 Internet 连接共享添加到网络后,无法打印。发生此问题的原因是,连接共享使用地址范围为 198.168.0.x 的 C 类子网。要解决此问题,请重置打印机的 IP 地址,使其与正在使用连接共享的计算机的子网相匹配。
无法将打印作业发送到 Windows 98 客户端
无法从 Window 2000 将打印作业发送到使用打印机共享密码的基于 Windows 98 的客户端。要解决此问题,请使用以下命令:
net use LPT1 \\计算机\打印机密码 /persistent:yes
将计算机 替换为共享打印机的基于 Windows 98 的计算机的名称,将打印机 替换为打印机共享的名称,将密码 替换为共享密码。
通常由本地端口监视器问题而引发的错误信息
重新启动计算机或重新启动后台打印程序服务时,收到以下错误信息:
Spoolsv.exe failed to start
打开打印机属性时,收到以下错误信息:
Out of Resources Error
试图打印文档时,收到“访问冲突”(Dr. Watson) 错误信息。Dr. Watson 日志指向 Spoolsv.exe,错误代码为 C0000005。

收到以下错误信息,后台打印程序停止:
The instruction at 'address' referenced memory at 'address'.The memory could not be read.
试图重新启动后台打印程序服务或打开“打印机”文件夹会引发同样的错误信息。

如果第三方程序更改了默认的本地端口监视器,则可能出现这些问题。为了修复这些问题,需要编辑注册表。

警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。1. 启动注册表编辑器。
2. 在以下注册表项中找到 Local Port 值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Local Port 
3. 双击 Driver 子项,然后编辑该值。将该字符串值改为 Localspl.dll,然后单击确定。
4. 检查下面的注册表项以找出第三方监视器。删除所有非默认的监视器:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
默认端口监视器包括:
AppleTalk Printing Devices(如果安装了 Macintosh 服务)
BJ Language Monitor
Local Port
PJL Language Monitor
Standard TCP/IP Port
USB Monitor
Windows NT Fax Monitor

** LPR Port
注意:请不要删除 LPR Port Monitor,除非 Microsoft 技术支持人员建议您这样做。 
5. 检查下面的注册表项以找出第三方打印提供程序。删除所有非默认的打印提供程序:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Providers
默认打印提供程序包括:
Internet Print Provider
LanMan Print Services 
6. 检查下面的注册表项以找出第三方打印处理器。删除所有非默认的打印提供程序:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows NT x86\Print Processors
默认打印处理器为:
WinPrint
要查明哪个打印机正在使用打印处理器,请使用 Microsoft 产品支持报告工具 (MPS_REPORTS) 打开计算机名_PRINTDRIVERS.TXT,然后搜索第三方打印处理器和使用打印处理器的队列。
7. 将第三方打印处理器更改为 WinPrint。
8. 单击开始,指向设置,然后单击控制面板。
9. 双击打印机和传真,右键单击打印机,然后单击属性。
10. 在高级选项卡上,单击打印处理器。
11. 在打印处理器框中,单击 WinPrint。
12. 单击确定两次。
13. 退出注册表编辑器。
在编辑完注册表后,重新启动后台打印程序。为此,请启动 Microsoft 管理控制台 (MMC),添加“计算机管理”或“服务”管理单元。右键单击 Print Spooler Service(打印后台程序服务),然后单击启动。
无法将 Windows 2000 打印机驱动程序添加到 Windows NT 4.0
要将 Windows NT 4.0 托管的网络打印机添加到基于 Windows 2000 的计算机,请按照下列步骤操作: 1. 在基于 Windows 2000 的计算机上,将打印机本地安装到 LPT1 端口。
2. 单击开始,指向设置,然后单击打印机。
3. 右键单击打印机,然后单击属性。
4. 在端口选项卡上,单击 LPT1。
5. 单击添加端口。
6. 双击本地端口。
7. 键入 \\服务器名\打印机共享,其中服务器名 是服务器的名称,打印机共享 是打印机共享的名称。
8. 单击确定。

打印文档时出现错误信息
打印文档时,收到以下错误信息:
There was an error found when printing the document "Name of document" to LPT1:.The device is not ready.
如果打印机是网络打印机,可尝试使用 \\服务器名 打开 IPC 连接,以确保存在网络连接而且服务器可以响应共享请求。

如果打印机是本地打印机,请检查本地连接的打印机的线路连接和电源是否正常。

如果这些方法都没有问题,可能必须重新安装打印机的驱动程序。为了完全删除打印机,可能必须编辑注册表。

警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。1. 启动注册表编辑器。
2. 在以下注册表项中找到 Printers 值:
KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers 
3. 删除此项下安装的打印机。例如,对于 Generic Text/Only 打印机,删除以下注册表项:
KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\Generic / Text Only 
4. 按照本文“通常由本地端口监视器问题而引发的错误信息”一节的说明操作。
5. 退出注册表编辑器。
然后,重新安装打印机的驱动程序。
无法从基于 MS-DOS 的 16 位程序打印
在这种情况下,请在命令提示符处键入以下命令行:
net use lpt1:\\服务器名\打印机共享 /persistent:yes
在 16 位程序中,打印到 LPT1。如果基于 MS-DOS 的 16 位程序必须使用其他端口,可以为该程序分配其他 LPT 端口。

 

**********************************************************

如何解决 Windows XP 中的网络打印问题
警告:“注册表编辑器”使用不当会造成严重问题,这些问题可能需要重新安装操作系统。Microsoft 不保证能够解决因为“注册表编辑器”使用不当而产生的问题。使用“注册表编辑器”需要您自担风险。

常规故障排除步骤
1. 检查基本的网络连接是否工作。

检查用户权限、协议、共享名等以确保您可以连接到服务器。使用 Windows 资源管理器将文件复制到打印服务器上的共享位置。如果您不能访问服务器,则可能无法访问打印机。
2. 创建本地打印机,然后将端口重定向到网络服务器。请按照下列步骤操作:

a.  创建本地打印机,然后在端口下添加一个新端口。
b.  单击本地端口,单击新建端口,然后按照 \\ServerName\PrinterName 语法键入打印机的服务器和打印机名称。
c.  将新端口用于本地打印机。
当提示输入密码时,Windows XP 可能没有可用于输入密码的字段。请在目标计算机上将密码重置为空。例如:在安装 Xerox 打印机的 Windows 98 计算机上,清除密码;将其设置为空。(不是实际的单词“blank”)

此测试可以查明将文件从服务器复制到您的计算机是否有问题。如果您使用连接到安装程序或者如果您在“添加打印机向导”中单击网络打印机,请重复此操作。
3. 如果打印机不是 PostScript 打印机,则查看您是否可以从基于 MS-DOS 的程序进行打印。(除非在基于 MS-DOS 的程序中选择 PostScript 驱动程序,否则从该程序打印在 PostScript 打印机上不起作用。)

查看是否已运行 net use 命令将 LPT 端口映射到网络共享。如果已在运行,则删除该映射,然后重新映射端口。再次尝试进行打印。

如果打印工作,则可能是备份的连接存在问题。您可能需要在每次登录时运行登录脚本命令重新映射端口。

如果打印不工作,则在命令提示符处键入 dir > lptx,其中 x 是正被映射的端口的号码,然后按 ENTER 键。

如果打印仍旧无法工作,则仔细检查网络连接。 

解决具体的问题
添加 ICS 后无法打印到网络打印机
在将 Internet 连接共享 (ICS) 添加到网络之后,可能无法进行打印。此问题的发生是因为 ICS 使用 C 类别子网,而该子网的地址范围是 198.168.0.x。若要解决此问题,请重置打印机的 IP 地址使之与正在使用 ICS 的计算机的子网匹配。
无法将打印作业发送到基于 Windows 98 的客户端
对于使用打印机共享密码的 Microsoft Windows 98 的客户端,您可能无法将打印作业从 Windows XP 发送到 Windows 98 客户端。若要解决此问题,请运行以下命令:
net use lpt1 \\computer\printer password /persistent:yes
用共享打印机的 Windows 98 客户端计算机名替换 computer,用打印机共享的名称替换 printer,用打印机共享的密码替换 password。
通常由于本地端口监视器出现问题而引发的错误消息
当您重新启动计算机或重新启动打印后台处理程序服务时,可能会收到以下错误消息:
Spoolsv.exe failed to start
当您打开打印机的属性时,可能会收到以下错误消息:
Out of Resources Error
当您尝试打印文档时,可能会收到“Access violation”(Dr. Watson) 错误消息。Dr. Watson 日志指向带有错误代码 C0000005 的 Spoolsv.exe。

您可能会收到以下错误消息,打印后台处理程序停止:
The instruction at 'address' referenced memory at 'address'.The memory could not be read.
试图重新启动打印后台处理程序服务或打开 Printers 文件夹会导致产生相同的消息。

如果第三方程序将默认本地端口监视器更改,便可能出现这些问题。若要解决这些问题,请在注册表中更正 Local Port 值。请按照下列步骤操作: 1. 启动“注册表编辑器”(Regedt32.exe)。
2. 在注册表中以下项下找到 Local Port 值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Local Port
3. 双击 Driver 项,然后编辑该值。将字符串值更改为 Localspl.dll,然后单击确定。
4. 检查以下注册表项中是否存在第三方端口监视器,然后删除默认端口监视器以外的所有端口监视器:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
默认端口监视器包括:
AppleTalk 打印设备(当安装了“Macintosh 服务”时)
BJ 语言监视器
本地端口
PJL 语言监视器
标准 TCP/IP 端口
USB 监视器
Windows NT 传真监视器
 
5. 检查以下注册表项中是否存在第三方打印提供程序,然后删除默认打印提供程序以外的所有打印提供程序:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Providers
默认打印提供程序包括:
Internet 打印提供程序
LanMan 打印提供程序 
6. 退出“注册表编辑器”。
在编辑完注册表后,重新启动打印后台处理程序: 1. 单击开始,单击运行,键入 mmc,然后单击确定。
2. 在文件菜单上,单击添加/删除管理单元。
3. 单击添加,单击计算机管理,单击添加,然后单击完成。
4. 单击关闭,然后单击确定。
5. 展开计算机管理,展开服务和应用程序,然后单击服务。
6. 右键单击 Print Spooler,然后单击启动。

无法将 Windows XP 打印机驱动程序添加到 Windows NT 4.0
若要将由基于 Windows NT 4.0 的计算机管理的网络打印机添加到基于 Windows XP 的计算机,请在基于 Windows XP 的计算机的 LPT1 上本地安装打印机。请按照下列步骤操作: 1. 单击开始,单击控制面板,然后双击打印机和传真。
2. 右键单击打印机,然后单击属性。
3. 在端口选项卡上,单击 LPT1。
4. 单击添加端口。
5. 双击本地端口。
6. 键入 \\ServerName\PrinterShare,其中 ServerName 是服务器的名称,PrinterShare 是打印机共享的名称。
7. 单击确定。

出现表示“设备未就绪”的错误消息
当打印文档时,您可能会收到下列错误信息:
There was an error found when printing the document "Name of document" to LPT1:.The device is not ready.
如果该打印机是网络打印机,则尝试通过使用 \\ServerName 打开进程间通信 (IPC) 连接,确保存在网络连接并且服务器可以响应共享请求。

对于本地打印机,检查本地连接的打印机的连线和电源。

如果这些方法可以解决问题,则最好重新安装打印机驱动程序。若要完全移除打印机,请编辑注册表: 1. 启动“注册表编辑器”(Regedt32.exe)。
2. 在以下注册表项中找到 Printers 值:
KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers
3. 删除安装在此项下的打印机。例如,删除 Printers 下的子项
Generic/Text Only: KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\Generic/Text Only
4. 按照本文“通常由于本地端口监视器出现问题而引发的错误消息”一节的说明执行操作。
5. 退出“注册表编辑器”。
在执行此操作之后,重新安装打印机的驱动程序。
无法从基于 MS-DOS 的 16 位程序打印
在此情况下,在命令提示符处键入以下命令,然后按 ENTER 键:
net use lpt1:\\servername\printershare /persistent:yes
在 16 位程序中,打印到 LPT1。如果基于 MS-DOS 的 16 位程序需要使用其他端口,则您可以为该程序分配其他 LPT 端口。
由于错误配置或不兼容的定点和打印情况导致的错误消息
定点和打印降低管理系统开销,简化并自动执行打印。Microsoft Windows 95、Windows 98 和 Windows 98 Second Edition(作为客户端)以及 Windows NT 3.5 和更高版本中引入了定点和打印功能。

当将打印机连接到打印服务器后,连接的客户机在打印服务器上搜索适当的驱动程序。如果驱动程序安装在服务器上,则将为客户机自动下载并配置该驱动程序。但是,如果没有驱动程序,则将提示您选择并安装驱动程序。

当尝试将基于 Windows 的网络客户机连接到打印服务器时,您将收到以下错误消息:
The server on which the device name printer resides does not have the correct printer driver installed.If you want to install the driver on your local computer, clickOK.
在以下情况下,您可能会收到此错误消息: • 服务器消息块 (SMB) 连接到打印服务器。
• 您使用新的 Internet 打印协议 (IPP) 连接到打印机,但 Internet 打印服务器未安装合适的驱动程序。
• 计算机具有与 Windows XP 不兼容的第三方驱动程序。
如果在以下情况下收到该错误消息,则使用相应的解决方法。

连接有 SMB 的打印服务器

SMB 打印服务器允许网络上的工作站将打印作业直接发送到打印服务器,而无需经过中间计算机或打印服务器。此配置类型不支持定点和打印。

若要解决此问题,请按照下列步骤操作在本地安装打印驱动程序并创建到 SMB 打印共享的连接: 1. 单击开始,然后单击打印机和传真。
2. 双击添加打印机,然后单击下一步。
3. 单击连接到这台计算机的本地打印机,然后单击下一步。
4. 单击创建新端口。
5. 在类型框中,单击 Local Port,然后单击下一步。
6. 键入 SMB 共享名。例如:
\\PrintServer\ShareName
7. 继续执行向导并为此设备安装适当的驱动程序。
Internet 打印协议

您可以使用 IPP 通过 Intranet 或 Internet 直接打印到统一资源定位符 (URL)。另外,您可以使用 Microsoft Internet Explorer 从 Internet 或 Intranet 安装打印机。如果 IPP 打印服务器未安装合适的驱动程序,则可能出现错误消息。

若要解决此问题,请按照适当方法的步骤执行操作:

方法 1(仅限管理员使用): 在服务器上安装兼容的驱动程序。 1. 单击开始,然后单击打印机和传真。
2. 双击添加打印机,然后单击下一步。
3. 单击连接到这台计算机的本地打印机,然后单击下一步。
4. 单击创建新端口。
5. 在类型框中,单击 Local Port,然后单击下一步。
6. 键入共享名。例如:
\\PrintServer\ShareName
7. 继续执行向导并为此设备安装适当的驱动程序。
方法 2: 在客户机上安装合适的驱动程序,然后将打印机重定向到合适的 IPP URL。 1. 单击开始,然后单击打印机和传真。
2. 双击添加打印机,然后单击下一步。
3. 单击连接到这台计算机的本地打印机,然后单击下一步。
4. 单击创建新端口。
5. 在类型框中,单击 Standard Port Monitor,然后单击下一步。
6. 键入 IPP 打印服务器的 Internet 协议 (IP) 地址。
7. 继续执行“添加打印机向导”并安装合适的驱动程序。
不兼容的打印驱动程序

某些为 Windows NT 4.0 编写的第三方驱动程序在 Windows XP 中不能正常工作。如果您试图安装不兼容的驱动程序,则在定点和打印过程中将显示错误消息。

若要解决此问题,请按照适当方法的步骤执行操作:

方法 1(仅限管理员使用): 使用从制造商 Web 站点获得的更新驱动程序: 1. 下载并安装更新驱动程序。
2. 如果该驱动程序有卸载工具,则在继续以下步骤之前运行该工具。
3. 单击开始,然后单击打印机和传真。
4. 双击添加打印机,然后单击下一步。
5. 单击连接到这台计算机的本地打印机,然后单击下一步。
6. 单击以前的驱动程序所使用的端口。
7. 单击从磁盘安装,然后键入更新驱动程序安装文件夹的名称。
8. 继续执行安装程序,并向下层客户机共享该驱动程序。
方法 2(仅限管理员使用): 在打印服务器上安装 Windows XP 驱动程序: 1. 如果原驱动程序有卸载工具,则在继续以下步骤之前运行该工具。
2. 单击开始,然后单击打印机和传真。
3. 双击添加打印机,然后单击下一步。
4. 单击连接到这台计算机的本地打印机,然后单击下一步。
5. 单击以前的原始设备制造商 (OEM) 驱动程序所使用的端口。
6. 在型号/制造商列表中单击适当的型号。
7. 完成安装程序,并且共享打印机供网络使用。
方法 3: 在客户机上安装兼容驱动程序,然后将输出重定向到服务器: 1. 单击开始,然后单击打印机和传真。
2. 双击添加打印机,然后单击下一步。
3. 单击连接到这台计算机的本地打印机,然后单击下一步。
4. 单击创建新端口。
5. 在类型框中,单击 Local Port,然后单击下一步。
6. 键入共享名。例如:
\\PrintServer\ShareName
7. 继续执行向导并为此设备安装适当的驱动程序。

 

**********************************************************

本文地址:http://com.8s8s.com/it/it33335.htm