Пример #1
0
        private int CreateAssociateSession()
        {
            UnparsePDU u;
            try
            {
                var associateRq = new AAssociateRQ(16384, LocalAETitle, PrinterAETitle);

                tcpClient.Connect(IPAddress.Parse(PrinterAddress), Convert.ToInt16(PrinterPort));


                if (tcpClient.Connected)
                {
                    byte[] byteBuffer = associateRq.CreateByteBuff();
                    _stream.Write(byteBuffer, 0, byteBuffer.Length);
                    var _receiveBuffer = new byte[16384];

                    u = new UnparsePDU(_stream, _receiveBuffer);
                    if (u.PDUType.Equals(2))
                    {
                        var associateAC = new AAssociateAC();

                        //var nget = new N_GET();
                    }
                    else if (u.PDUType.Equals(7))
                    {
                        tcpClient.Close();
                        return u.Buff[9];
                    }
                }
            }
            catch (Exception ex)
            {
                _logger.FatalException("Exception", ex);
            }
            return -1;
        }