Cgw.MonitorManageAdapter.CgwMonitorManageAdapter.StopReceiveVideoByPipe C# (CSharp) Method

StopReceiveVideoByPipe() public method

停止预览摄像头视频,并清理命名管道
public StopReceiveVideoByPipe ( string cameraNo ) : SmcErr
cameraNo string
return Cgw.SmcError.SmcErr
        public Cgw.SmcError.SmcErr StopReceiveVideoByPipe(string cameraNo)
        {
            NLogEx.LoggerEx logEx = new NLogEx.LoggerEx(log);
            logEx.Trace("Enter: CgwMonitorManageAdapter.StopReceiveVideoByPipe");
            Cgw.SmcError.SmcErr err = new Cgw.SmcError.SmcErr();

            try
            {
                //if (serviceControl.MonitorServiceRun() && client.State == CommunicationState.Opened)
                if(serviceControl.MonitorServiceRun())
                {
                    client = new MonitorManageServiceClient();
                    CgwMonitorManageServiceReference.SmcErr serviceErr = client.StopReceiveVideoByPipe(cameraNo);
                    client.Close();
                    if (serviceErr.ErrNo != Cgw.SmcError.CgwError.ERR_MONITOR_MANAGE_SERVICE_SUCCESS)
                    {
                        logEx.Error("CgwMonitorManageAdapter.StopReceiveVideoByPipe failed. ErrNo = {0} ", serviceErr.ErrNo);
                        err = SetCgwErrNo(serviceErr);
                    }
                    else
                    {
                        VideoPipe videoPipe = VideoPipeManage.Instance().DeleteVideoPipe(cameraNo);
                        if (videoPipe != null)
                        {
                            videoPipe.Stop();
                            logEx.Info("CgwMonitorManageAdapter.StopReceiveVideoByPipe Success. cameraNo = {0} ", cameraNo);
                        }
                        else
                        {
                            logEx.Error("CgwMonitorManageAdapter.StopReceiveVideoByPipe failed. ErrNo = {0} ", serviceErr.ErrNo);
                        }
                    }
                }
                else
                {
                    err.SetErrorNo(Cgw.SmcError.CgwError.ERR_MONITOR_MANAGE_SERVICE_RESTARTING);
                }
            }
            catch (System.Exception ex)
            {
                err.SetErrorNo(Cgw.SmcError.CgwError.ERR_MONITOR_MANAGE_SERVICE_RESTARTING);
                logEx.Error("CgwMonitorManageServiceReference.StopReceiveVideoByPipe failed. Exception is {0} ", ex.ToString());
                logEx.Error("CameraNo:" + cameraNo);
            }
            return err;
        }