關於OPC通訊做的比較多了。但是OPC的DCOM配置一直沒認真去查資料,專心去整。這可能是因為我在測試程序的時候都是把服務器跟客戶端在同一台電腦上運行,這樣就不要配置DCOM。現在來記錄一下下個人在網上查找的資料吧。

http://www.cnblogs.com/johnpher/archive/2012/10/27/2742207.html
我首先是根據第一個博客提供的方法配置了一下,然后用OPC客戶端連接的時候,沒有成功。提示
“
對 COM 組件的調用返回了錯誤 HRESULT E_FAIL。 ”
然后我又按照第二個博客的辦法配置了一下,OPC客戶端就可以連的上遠程的OPC服務器了。所以只能說我這次成功了,但不知道我有沒有多余的配置。
下面來說說我做的吧。
(1)服務器的配置
a)安裝 NWLink IPX/SPX/NetBIOS Compatible Transport Protocol 協議
在“網絡連接”里面找到你用的那個網絡端口,比如說我用的是無線上網,選擇“無線網絡連接”,右擊“屬性”。

在以上頁面中點擊“安裝” —— “協議”——找到那個協議安裝。(我的那個協議已經裝過了,所以在列表中可以看到)。
b)關閉防火牆跟殺毒軟件。在服務器機跟客戶端機都需要。
c) 運行dcomcnfg

在如下圖的“我的電腦”的屬性頁中配置:

在以下的選項卡里面設置:


在“COM安全”選項添加Administrator、ANONYMOUS、LOGON Guest、everyone、Eason(這個是我電腦的登陸名,這里也設置了)
然后每一個都把權限給勾上。

d)
在OPC服務器上,還要回到“組件服務”界面,打開"DCOM配置",找到注冊的OPC服務器的名稱選項,打開它的屬性。




(注:有時做好dcom配置后,需要重新啟動電腦才起作用。所以為了安全起見,建議最好重新啟動一下電腦,再做下一步)。
e)本地安全策略配置
1、OPC服務器和OPCClient服務器都要設置:打開“控制面版”——“管理工具”——打開“本地安全策略” 安全選項——”網絡訪問:本地帳戶的共享和安全模式”——屬性

注:如果不配置這個,那么在連接OPC服務器的時候,就會出現拒絕訪問的現象。
(2)客戶端的配置
客戶端按照以上服務器的
a)、b)、c)、e)配置,然后就可以連接的上了。
附一些可能的配置方法:
一、在裝有某OPC SERVER的機器上。DCOM配置如下
1. 運行服務器上的dcomcnfg程序,進行DCOM配置。
2. 進入DCOM的總體默認屬性頁面,將“在這台計算機上啟用分布式COM”打上勾,將默認身份級別改為“無”。
3. 進入DCOM的總體默認安全機制頁面,確認默認訪問權限和默認啟動權限中的默認值無EveryOne,
如果不去掉EveryOne,應用服務器不能正常啟動。
4.在常規頁面中,雙擊你的應用服務器,打開你的應用服務器DCOM屬性設置。
5.將常規頁面中的身份驗證級別改為“無”。
6.位置頁面中選上“在這台計算機上運行應用程序”。
7.將安全性頁面設置中,均選擇“使用自定義訪問權限”,編輯每一個權限,將EveryOne加入用戶列表中。
8.身份標識頁面中,選擇“交互式用戶”。
注意NT的GUEST用戶不能禁用。
二、在客戶端機器上DCOM配置如下:
1后點”開始”->”運行”,輸入”dcomcnfg”,然后回車,啟動dcom配 置。
2. 常規頁面中,雙擊你的應用服務器,打開你的應用服務器DCOM屬性設置。
3. 將常規頁面中的身份驗證級別改為“無”。
4. 身份標識頁面中,選擇“交互式用戶”。
5. 位置頁面中,選擇“在這台計算機上運行應用程序”。
進入DCOM的總體默認屬性頁面,將“在這台計算機上啟用分布式COM”打上勾,將默認身份級別改為“無”。
兩端配置好后,客戶端機器就可以訪問遠方機器的OPCSERVER了
1. 運行服務器上的dcomcnfg程序,進行DCOM配置。
2. 進入DCOM的總體默認屬性頁面,將“在這台計算機上啟用分布式COM”打上勾,將默認身份級別改為“無”。
3. 進入DCOM的總體默認安全機制頁面,確認默認訪問權限和默認啟動權限中的默認值無EveryOne,
如果不去掉EveryOne,應用服務器不能正常啟動。
4.在常規頁面中,雙擊你的應用服務器,打開你的應用服務器DCOM屬性設置。
5.將常規頁面中的身份驗證級別改為“無”。
6.位置頁面中選上“在這台計算機上運行應用程序”。
7.將安全性頁面設置中,均選擇“使用自定義訪問權限”,編輯每一個權限,將EveryOne加入用戶列表中。
8.身份標識頁面中,選擇“交互式用戶”。
注意NT的GUEST用戶不能禁用。
二、在客戶端機器上DCOM配置如下:
1后點”開始”->”運行”,輸入”dcomcnfg”,然后回車,啟動dcom配 置。
2. 常規頁面中,雙擊你的應用服務器,打開你的應用服務器DCOM屬性設置。
3. 將常規頁面中的身份驗證級別改為“無”。
4. 身份標識頁面中,選擇“交互式用戶”。
5. 位置頁面中,選擇“在這台計算機上運行應用程序”。
進入DCOM的總體默認屬性頁面,將“在這台計算機上啟用分布式COM”打上勾,將默認身份級別改為“無”。
兩端配置好后,客戶端機器就可以訪問遠方機器的OPCSERVER了