3

Problem:

When opening windows "QUEUE MESSAGES" on windows server 2003 I received the error message

"The list of messages cannot be retrieved. Error: Access is denied"

Why?

Recreated following these steps:

  • Windows Server 2003 standard 64-bit
  • Right click MY COMPUTER
  • Select MANAGE
  • SERVICES
  • MESSAGE QUEUING
  • PRIVATE QUEUE
  • MYSERVICE
  • QUEUE MESSAGES

Error message displayed:

"The list of messages cannot be retrieved. Error: Access is denied."

Setup/configuration currently deployed:

  • Logged in as local administrator.
  • Machine is stand alone.
  • WCF service is running (using WCF specific user)
  • WCF user account is a member of the local ADMIN group.
  • dot net 4.0.
  • Messing Queueing service is running (local system)
  • Maybe a permissions issue creating the error.
4

This can happen if the .NET Service removed the "Everyone" group from the permissions the private queue. Here are some steps you can take to resolve this:

  1. Stop the MSMQ Service
  2. Open the folder C:\WINDOWS\system32\msmq\storage\lqs
  3. Find the file in this folder that describes your queue -- (incommingQueue)
  4. Using notepad, open the lqs file for some other private queue that has good security permissions. (If you don't have any other private queues create one)
  5. Locate the line in the file that begins Security=....
  6. Copy the whole line to your clipboard (watch out for Word Wrap, this line will be quite long)
  7. Open the lqs file for your problem queue in your text editor
  8. Overwrite the Security=... line in this file with the contents of your clipboard
  9. Save the modified lqs file
  10. Start the MSMQ service

You should find that the problem queue now has the same permissions as the queue whose security settings you copied at step 6 above.

  • 2
    I tried to edit the file but it say "Please check if the file is opened in another program" I am not able to figure out where is file is open. As I restarted my system and application is running – Ish Sep 2 '16 at 7:19
0

Editing queue file security string value as explained in the answer by @scott_lotus can be a bit error prone process and you actually have no idea what are you doing with queue ACL. Also as @Ish mentioned you may have issues writing your changes to this file even when Message Queue service is stopped.

Better way of doing this may be using Active Directory Users and Computers snap-in aka ADUC (dsa.msc). Make sure that in this snap-in under View, you have enabled the following options "Users, Contacts, Groups, and Computers as containers" and "Advanced Features" which allow you to locate computer object where your MSMQ queues are hosted, expand it and invoke properties to edit queue container ACL in the same way you work with files/folder ACL (see sample screenshot below). Most likely you will need to take ownership before you will be able to make any changes in ACL.

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.