private void DisconnectImpl(bool rpcFailed = false) { if (!IsConnected) { return; } Log.TraceFormat("Disconnecting from '{0}' opc server", Uri); if (!rpcFailed) { _shutdownConnectionPoint.Disconnect(); } RemoveAllGroups(rpcFailed); if (ComObject != null) { try { ComObject.ReleaseComServer(); } catch (Exception ex) { Log.Error("Failed to release opc server's COM object", ex); } } ComObject = null; Log.TraceFormat("Disconnected from '{0}' opc server", Uri); OnConnectionStateChanged(false); }
private void Disconnect() { _connectionPoint.Disconnect(); }