列印多工緩衝處理器: 重新安裝印表機驅動程式、檢查登錄權限並重新啟動列印多工緩衝處理器

Microsoft.Windows.Server.2008.PrintServer.PrintSpoolerService.PrintSpoolerStatus.System.Reinstalltheprinterdrivercheckregistrypermissionsandrestarttheprintspooler.EventBased.UnitMonitor (UnitMonitor)

重新安裝印表機驅動程式、檢查登錄權限並重新啟動列印多工緩衝處理器。

Knowledge Base article:

摘要

重新安裝印表機驅動程式、檢查登錄權限並重新啟動列印多工緩衝處理器。

解決方式

為了與直接存取印表機登錄位置的應用程式保持相容,列印多工緩衝處理器會嘗試建立舊位置和新位置的連結。如果無法建立這些連結,就會發生此錯誤。請注意,即使此錯誤只會影響舊版應用程式,卻仍可能表示系統本身的狀態不佳。

發生此錯誤時通常不需要採取任何使用者動作。如果列印未正確運作,可能的解決方式包括:

在 [系統管理工具] 資料夾中開啟 [服務] 嵌入式管理單元。在服務清單中尋找 [列印多工緩衝處理器] 服務,然後確認狀態為 [已啟動]。如果其狀態不是「已啟動」,請選取服務,然後按一下 [動作] 功能表上的 [啟動]。附註:您也可以在提升權限的 [命令提示字元] 視窗中輸入下列命令執行這項操作:net stop spooler and net start spooler

在某些情況下,您可能會收到錯誤 1068 -「相依服務或群組無法啟動」- 在嘗試啟動列印多工緩衝處理器時。如果「列印多工緩衝處理器」服務倚賴其他未執行的服務,就可能發生這種情況。若要解決此問題,請利用下列程序:

在 [服務] 嵌入式管理單元中,以滑鼠右鍵按一下 [列印多工緩衝處理器],然後按一下 [內容]。按一下 [相依性] 索引標籤。第一個方塊會列出啟動「列印多工緩衝處理器」服務時必須執行的所有系統服務。這些就是相依性。記下每一項服務,按一下 [確定],然後啟動與「列印多工緩衝處理器」服務相依的每一項服務 (如果服務尚未啟動的話)。針對尚未啟動的每一項服務,以滑鼠右鍵按一下服務,按一下 [內容],然後確認 [啟動] 類型為 [自動]。

Element properties:

TargetMicrosoft.Windows.Server.2008.PrintServerRole
Parent MonitorSystem.Health.AvailabilityState
CategoryStateCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
列印多工緩衝處理器狀態警示
{0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.2008.PrintServer.PrintSpoolerService.PrintSpoolerStatus.System.Reinstalltheprinterdrivercheckregistrypermissionsandrestarttheprintspooler.EventBased.UnitMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.Windows.Server.2008.PrintServerRole" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2008.PrintServer.PrintSpoolerService.PrintSpoolerStatus.System.Reinstalltheprinterdrivercheckregistrypermissionsandrestarttheprintspooler.EventBased.UnitMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Negative" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="Success" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>System</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-PrintSpooler</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(53)$</Pattern>
</RegExExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>System</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-PrintSpooler</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(15|16)$</Pattern>
</RegExExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>