الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

درج الفلوس

بدأه aaet1 في 2 يونيو 2011 · 3 رد · 737 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم، اخوانى محتاج مساعدتكم فى كود يمكن من خلاله فتح درج الفلوس cash drawer وهو متصل بسيريال 1 (Com port 1)

أنا جربت أفتح البورت ده واكتب فيه كلام وأقفله ولكن الجهاز برضه مش بيفتح أنا مش فاهم المشكلة فين

With ComCtrl

.PortName = "COM1"

.Open()

.Write("0699")

'.Close()

End With

#2

السلام عليكم ورحمه الله وبركاته

اخي جرب الكود التالي


Dim cashDrawerCmd() As Byte = {48, 54, 57, 57}
Using comPort As System.IO.Ports.SerialPort = My.Computer.Ports.OpenSerialPort("COM1")
comPort.BaudRate = 9600
comPort.DataBits = 8
comPort.Parity = System.IO.Ports.Parity.None
comPort.StopBits = System.IO.Ports.StopBits.One
comPort.Handshake = System.IO.Ports.Handshake.RequestToSend
comPort.Write(cashDrawerCmd, 0, cashDrawerCmd.Length)
End Using

طبعا تم تحويل كودك 0699 الى بايتات ومن ثم تم ارسالها عبر منفذ ال COM1

1

.:: Wish to become better and better ::.

#3

أخي الفضل إذا كانت الطابعة المستخدمة طابعة فواتير من اعدادتها تجد خيار فتح الدرج قبل/بعد الطباعه

جرب الكود

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        ' create an array to hold the command code bytes
        Dim cashDrawerCmd() As Byte = {27, 112, 0, 25, 250}

        ' sets up comPort as SerialPort and opens the port
        Using comPort As System.IO.Ports.SerialPort = My.Computer.Ports.OpenSerialPort("COM1")

            ' setup the com port with the required parameters. (Set these to suit)
            comPort.BaudRate = 9600
            comPort.DataBits = 8
            comPort.Parity = System.IO.Ports.Parity.None
            comPort.StopBits = System.IO.Ports.StopBits.One
            comPort.Handshake = System.IO.Ports.Handshake.RequestToSend

            ' writes the whole of the byte array containg the open drawer command codes to the port
            comPort.Write(cashDrawerCmd, 0, cashDrawerCmd.Length)

        End Using

    End Sub

تم تعديل هذه المشاركة بواسطة عبد الله الثبيتي في 3 يونيو 2011 في 13:11

#4

السلام عليكم

هذا السطر يتسبب فى وقوف البرنامج بعد قيامه بكتابة البيانات إلى البورت وكأنه ينتظر شيئا ما

comPort.Handshake = System.IO.Ports.Handshake.RequestToSend

مواضيع مشابهة