How to check if MSMQ is installed on the system?

Posted on 2006-07-13
Last Modified: 2012-06-21
How to check if MSMQ is installed on the system? In my program, I need to check to see if MSMQ is installed. If yes, I need to create some message queue. Thanks!
Question by:waywaylu
  • 2

Expert Comment

ID: 17103979
Hope this helps:

Best regards
LVL 15

Accepted Solution

Raisor earned 50 total points
ID: 17104292

If Visual Basic is a language you'd be able to work with I'd suggest the following code:


Private Const MAX_MESSAGE_LENGTH = 512

Private Declare Function GetLastError Lib "kernel32" () As Long

Private Declare Function FormatMessage Lib "kernel32" Alias "FormatMessageA" (ByVal dwFlags As Long, lpSource As Any, ByVal dwMessageId As Long, ByVal dwLanguageId As Long, ByVal lpBuffer As String, ByVal nSize As Long, Arguments As Long) As Long

Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long

Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long

Function IsMSMQAvailable() As Boolean
    Dim hModule As Long
    hModule = LoadLibrary("msmqocm.dll")
    If hModule > 32 Then
        FreeLibrary hModule
        IsMSMQAvailable = True
        IsMSMQAvailable = False
    End If
End Function

Private Function GetAPIErrorMessageDescription(ByVal ErrNumber As Integer) As String
    Dim sError As String * MAX_MESSAGE_LENGTH
    Dim lErrMsgLen As Integer '32 bit message identifier
    lErrMsgLen = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, 0, ErrNumber, 0, sError, MAX_MESSAGE_LENGTH, 0)
    If lErrMsgLen > 0 Then
        GetAPIErrorMessageDescription = sError
    End If
End Function


You'd just have to call "If IsMSMQAvailable() Then ..."

Best regards,
LVL 15

Expert Comment

ID: 17273450

@waywaylu ... thank you for having chosen my answer ... but, what was wrong with it? ... why that grade of "B"?

Best regards,

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Hide vba in gp 7 93
This code tracks birthdays 3 72
Installation of new DAG member with different patching level 2 61
PHP installation issues 11 59
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question