2010-10-21 126 views
2

我無法弄清楚爲什麼在嘗試從遠程隊列接收消息時,出現「訪問消息排隊系統被拒絕」錯誤。 (Msmq 5.0)。MSMQ嘗試接收消息時,拒絕訪問消息排隊系統

發送到隊列沒有問題,從它接收是。

隊列本身的安全性被配置爲完全控制每個人和匿名。

任何想法爲什麼發送到這個隊列不起作用? (防火牆不是問題,因爲錯誤與所有防火牆關閉相同。)。

+0

當你說「接收」你如何接收消息時,你有一個控制檯應用程序從隊列中提取消息還是觸發消息? – dnoxs 2010-10-25 15:54:48

+0

嗨,我昨天找到了答案。 DTC未啓用遠程客戶端。對於我來說,不同的錯誤會比拒絕訪問更清晰。 – 2010-10-26 11:35:13

+0

請發表您的評論作爲答案並將其標記爲這樣。 – WhiteKnight 2012-05-03 11:15:46

回答

0

昨天我找到了答案。 DTC未啓用遠程客戶端。對於我來說,不同的錯誤會比拒絕訪問更清晰。

1

看到這個link。儘管遠程讀取操作不是最佳消息傳遞模型的一部分,但完全支持從遠程非事務性隊列讀取消息。遠程讀取通常用於在服務器之間分配工作負載。遠程閱讀是一個高開銷,因此效率低下的過程。在應用程序中包含遠程讀取操作會限制縮放。

那麼試想一下:

應用程序運行家族成員的計算機上運行與 MSMQ安裝在工作組模式將使用安全遠程讀取 API 3.0。工作組計算機無法爲遠程讀取建立加密通道,並且默認情況下,消息隊列服務器託管 包含要讀取的消息的隊列接受來自 工作組計算機的未加密通道的請求。爲了使MSMQ 3.0服務器拒絕從工作組 計算機的請求修改這個默認 行爲,添加 HKEY_LOCAL_MACHINE \ SOFTWARE \微軟\ MSMQ \參數\安全\ NewRemoteReadServerDenyWorkgroupClient 註冊表項(一個DWORD),並將其設置爲1。

+0

此鏈接有助於解決我的問題與遠程接收操作,雖然不是在答案中引用的註冊表設置,但是這個設置爲1:HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ MSMQ \ Parameters \ Security \ NewRemoteReadServerAllowNoneSecurityClient。 – 2016-02-08 18:12:35