How to Configure MSMQ Activation for Workflow Services

Our customer experience team has published a new article describing how to configure MSMQ activation when using workflow services. Queued communication is the typical mechanism used for communicating with long-running workflow services when the client and service may be starting and stopping over the lifetime of the conversation. The article covers setting up the messaging activities, creating the queue, and configuring IIS to support queued activation.

Once you get past the workflow portions, the process for MSMQ activation with workflow services looks pretty much the same as MSMQ activation with WCF services. The basic steps are:

1.
Create the queue
2.
Grant permissions on the queue to the service that will be receiving the messages. In the article they say to use Full Control but I believe it should be sufficient to just grant Peek Message and Receive Message permissions. It's also not mentioned but I think the settings described only work on computers joined to a domain. If you're using MSMQ on a computer that's joined to a workgroup and you get a security error on startup, let me know and I'll see if I can dig up the necessary changes.
3.
Run inetmgr.exe and add net.msmq to the list of enabled protocols in the advanced settings section of your service configuration.
4.
Run services.msc and make sure the net.msmq listener adapter service is setup to start automatically.