Esempio n. 1
0
        /// <summary>
        /// 判断是否连接到打印机
        /// </summary>
        /// <returns></returns>
        public bool ReConnectPrinter()
        {
            this.Close();
            var openFlag = this.Open();

            if (!openFlag)
            {
                throw new Exception("打开打印机串口失败");
            }
            //如果串口正常,就检测是否存在打印机
            var dataResult = WriteForResult(CommandFactory.GetCheckDeviceCommand(), 100);

            if (null == dataResult)
            {
                return(false);
            }
            return(true);
        }
Esempio n. 2
0
        /// <summary>
        /// 是否存在打印机
        /// </summary>
        /// <param name="printerName"></param>
        /// <returns></returns>
        public bool HasPrinter(out string printerName)
        {
            //首先判断串口是否已经打开
            if (null == _port || !_port.IsOpen)
            {
                //打开串口
                var flag = Open();
                if (!flag)
                {
                    throw new Exception("打开打印机串口失败");
                }
            }
            //如果串口正常,就检测是否存在打印机
            var dataResult = WriteForResult(CommandFactory.GetCheckDeviceCommand(), 100);

            if (null == dataResult)
            {
                throw new Exception("没有扫描到喷码机");
            }
            printerName = Encoding.Default.GetString(dataResult.GetData());
            return(true);
        }