"How do I install MSMQ 4.0 on my Windows 2003 server?"

[[Updated 6th February, 2009]]

Simple answer - you don't.

MSMQ is part of the operating system so you cannot install a different version to the one that came with it:

Version of MSMQ Operating system
1.0 Windows NT4, Windows 95/98/Me
2.0 Windows 2000
3.0 Windows XP, Windows 2003
4.0 Windows Vista, Windows 2008 R1 *
5.0 Windows 7, Windows 2008 R2 *

* - Windows 2008 R1 and R2 are regarded as separate operating systems for this discussion.

If there is new functionality that you need then you will have to upgrade the operating system.

Note - "traditional" MSMQ messages are "backward compatible" so a message sent from a Windows XP client will be accepted by a Windows 2000 server. MSMQ messages sent over HTTP or PGM, though, will only work with destinations that support that functionality (so MSMQ 3.0 and above).

Comments (10)

  1. Mohammed Saleh says:

    Can I install MSMQ 2.0 on Windows 2003 server?

    I need this to get my OS upgraded without changing my application, the application is requires MSMQ 2.0.


  2. MSDN Archive says:

    I’m guessing that if you’ve read this blog post then you know the answer already.

    I would be surprised, though, if your MSMQ 2.0 application didn’t work in MSMQ 3.0. And if it does not work then any coding changes should be minor.

    Have you encountered any specific problems in your testing?

  3. Carl Reid says:

    I am confused, MSMQ is tied to the operating system but what about the .NET framework?

    I have used the System.Messaging libraries to code against MSMQ 2.0 and MSMQ 3.0, now we are talking about MSMQ versions 4 and 5 but I do not see any updates to the System.Messaging libraries to support these new features. How exactly are .NET programmers meant to use these new features if there are no APIs to work with?

    Information on this topic seems extremely scarce so if anyone could post or point me at some information about the future of System.Messaging or MSMQ development in .NET I woud be most appreciative!

  4. MSDN Archive says:

    Hi Carl,

    Currently the new features in MSMQ (MSMQ4/5) are not supported by System.Messaging and we are currently working on a roadmap for MSMQ and the different APIs (System.Messaging, System.ServiceModel, etc). No timescale on this.

    WCF is what you need to use instead for the new features not currently accessible through System.Messaging.

    Do you have any specific examples of something you want to do but can’t because of System.Messaging limitations?


    John Breakwell (MSFT)

  5. I want to read the messages from a journal queue…..I am using wcf. Whenever the host is started the messages just disappear from the journal while none is received actually by the server.

  6. MSDN Archive says:


    Messages won’t just "disappear"  🙂

    What you are seeing shows that your hosted service is correctly receiving/reading messages from the Journal queue. So you are having trouble with whatever it is you are doing with the message AFTER you’ve read it.

    Could you please go into more detail on what should be happening?


    John Breakwell (MSFT)

  7. Vasant Kabra says:

    I have an application that runs perfectly on Win2K/MSMQ2.0, on Win2008 however it is not working. It gives following error.

    "The Procedure entry point MQSec_GetCryptoProvProperty could not be located in the dynamic link library MQSec.dll"

  8. MSDN Archive says:

    Hi Vasant,

    What code are you running when you get that error? It sounds like you are calling into MQSEC.DLL directly rather that using the MSMQ API. As MQSEC.DLL is an internal file, it is possible the entry points will change between versions. You will probably need to recompile for the new platform.


    John Breakwell

  9. Vasant Kabra says:

    Thanks John,

    The solution that you suggested worked.

    There is another problem.

    – I have a windows service on Windows 2008 SP1.

    – This service uses MSMQ.

    – This service was working as expected untill I installed SP2 on the box.

    – After Installing SP2 I get the following error:  "The Message Queuing service is not available"

    – Windows 2008 SP2 has two KB’s. KB948465 and KB955430. I uninstalled KB948465, but KB955430 CANNOT be uninstalled.

    – Could you please tell me how to resolve this error.

  10. MSDN Archive says:

    Hi Vasant,

    That KB article

    "Description of the Windows Vista and Windows Server 2008 installation software feature update released April 28, 2009"



    Update removal information

    You cannot remove this update.

    Your options would seem to be:

    1 rebuild the machine

    2 continue with 955430 in place and troubleshoot any MSMQ problems

    3 reapply sp2 and troubleshoot any MSMQ problems


    John Breakwell

Skip to main content