コード例 #1
0
        public void SetupParam()
        {
            string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;

            conn = new SqlConnection(constr);
            conn.Open();

            comms = new ComParam();
            comms = comms.GetParameters(conn);
        }
コード例 #2
0
        private void SampleThreadProc()
        {
            // TO DO : 这里要结合业务代码,获取IP、端口、串口等参数
            string ip   = string.Empty;
            int    port = 0;
            string com  = string.Empty;
            int    rate = 0;
            string pwd  = string.Empty;

            SampleGPS   sampleGps   = new SampleGPS();
            SocketParam socketParam = new SocketParam(ip, port);

            sampleGps.InitSocket(socketParam);
            sampleGps.StartSample();

            ComSampleBase sampleOBD = new SampleOBD();
            ComParam      comParam  = new ComParam(com, rate, pwd);

            sampleOBD.SetCom(comParam);
            sampleOBD.StartSample();

            while (true)
            {
                try
                {
                    GpsData gpsData = new GpsData();
                    sampleGps.RecvData(ref gpsData);
                    lock (lockGPS)
                    {
                        listGpsData.Add(gpsData);
                        if (listGpsData.Count > sampleMaxCount)
                        {
                            listGpsData.RemoveAt(0);
                        }
                    }

                    SampleData sampleData = new SampleData();
                    sampleOBD.RecvData(ref sampleData);
                    lock (lockOBD)
                    {
                        listSampleData.Add(sampleData);
                        if (listSampleData.Count > sampleMaxCount)
                        {
                            listSampleData.RemoveAt(0);
                        }
                    }
                }
                catch (Exception e)
                {
                    logger.ErrorFormat("SampleThreadProc catch an error and continue, {0}", e.Message);
                }

                Thread.Sleep(BaseDefine.COMMON_VALUE_SLEEP_200);
            }
        }
コード例 #3
0
        //设置串口参数
        public override void SetCom(ComParam param)
        {
            if (string.IsNullOrEmpty(param.Com) || param.Rate <= 0)
            {
                logger.ErrorFormat("SetCom param error, portname={0}, baudrate={1}", param.Com, param.Rate);
                return;
            }

            string errorMsg = string.Empty;

            signalData = BaseMethod.SplitString(param.Pwd, ',', out errorMsg);
            if (!string.IsNullOrEmpty(errorMsg))
            {
                logger.ErrorFormat("SetCom param error, pwd={0}", param.Pwd);
                return;
            }

            com = new BekUtils.Communication.ComUtil(param.Com, param.Rate, param.DataBits);
        }
コード例 #4
0
            public ComParam GetParameters(SqlConnection conn)
            {
                ComParam comms = new ComParam();

                SqlCommand     cmd = new SqlCommand("", conn);
                SqlDataAdapter da  = new SqlDataAdapter(cmd);

                cmd.CommandText = "Select top 1 * from Control";
                DataTable dt = new DataTable("Param");

                da.SelectCommand = cmd;
                da.Fill(dt);

                if (dt.Rows.Count > 0)
                {
                    comms             = new ComParam();
                    comms.EmailAlert  = dt.Rows[0]["EmailAlert"].ToString();
                    comms.EmailServer = dt.Rows[0]["EmailServer"].ToString();
                    comms.PortNumber  = (Int32)dt.Rows[0]["PortNumber"];
                    comms.SSL         = Convert.ToBoolean(dt.Rows[0]["SSL"]);

                    comms.MailboxUsername = dt.Rows[0]["MailboxUsername"].ToString();
                    comms.MailboxPassword = dt.Rows[0]["MailboxPassword"].ToString();

                    comms.SMSUsername = dt.Rows[0]["SMSUsername"].ToString();
                    comms.SMSPassword = dt.Rows[0]["SMSPassword"].ToString();

                    comms.SMSAPIId = dt.Rows[0]["SMSAPIId"].ToString();
                }

                cmd.Dispose();
                da.Dispose();
                dt.Dispose();

                return(comms);
            }
コード例 #5
0
 public void DisposeParam()
 {
     conn.Close();
     conn.Dispose();
     comms = null;
 }
コード例 #6
0
 public virtual void SetCom(ComParam param)
 {
 }