Message Queuing failed to bind to port 1801.

Microsoft.MSMQ.10.0.Rule.Alert.Event2170 (Rule)

Knowledge Base article:

Summary

Message Queuing failed to bind to port 1801. The port may already be bound to another process. If this problem arises during setup, you must free the port and run setup again.

Causes

Message Queuing failed to bind to port 1801. The port may already be bound to another process. If this problem arises during setup, you must free the port and run setup again.

Resolutions

To optimize the establishment of connections:

Free port 1801

and then Restart the MSMQ Service

To perform these procedures, you must have membership in Administrators, or you must have been delegated the appropriate authority.

Free port 1801

Message Queuing must bind to port 1801 to function. Make sure that the port is free (no other programs are trying to use it) and try to start the MSMQ Service again after allowing time for the port to close.

If this problem occurs during setup, you must free the port and run Setup again.

Restart the MSMQ Service

To restart the MSMQ Service:

Open the Services snap-in. To open Services, click Start. In the search box, type services.msc, and then press ENTER.

Right-click Message Queuing, and then click Restart. You must restart all the dependent services, as well.

Additional

For more information, see Event ID 2170 ( http://technet.microsoft.com/en-us/library/dd337489(WS.10).aspx)

Element properties:

TargetMicrosoft.MSMQ.10.0.Servers
CategoryAvailabilityHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Message Queuing failed to bind to port 1801.
{0}
Event LogApplication

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.MSMQ.10.0.Rule.Alert.Event2170" Enabled="false" Target="Microsoft.MSMQ.10.0.Servers" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>AvailabilityHealth</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventSourceName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="Microsoft.MSMQ.10.0.ServerRole"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>2170</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.MSMQ.10.0.Rule.Alert.Event2170.AlertName"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>