منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : سوال حول convert bytes to string
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
(24-06-23, 08:51 PM)joly كتب : [ -> ]
(24-06-23, 08:35 PM)dubai.eig كتب : [ -> ]
(24-06-23, 08:29 PM)joly كتب : [ -> ]
(24-06-23, 08:22 PM)dubai.eig كتب : [ -> ]
(24-06-23, 07:15 PM)joly كتب : [ -> ]انا طلع عندي 3GTN99EF0KG228494
لكن يمكن النص غير مطابق مع النص الحقيقي عندك
نفذ هذا الكود لحفظ الرد كما هو في ملف ثم ارفق الملف file.txt
PHP كود :
Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click
    sp1
.Write("0902" vbCr)
 
   Dim r sp1.ReadTo(">")
 
   IO.File.WriteAllText("file.txt"r)
End Sub 

بالنسبه للسؤال الثاني
هذا كود التحويل على اساس string وطلع عندي G228494
PHP كود :
Dim b "47 32 32 38 34 39 34"
Dim a As New System.Text.StringBuilder
For Each p As String In b.Split(" ")
 
   a.Append(Chr(Convert.ToInt32(p16)))
Next
Dim s 
a.ToString
MsgBox
(s


شكرا لك عزيزي

الحمدالله ضبط معاي


قمت بتغيير الكود التالي

كود :
       If inPort = "" Then Exit Sub
       For i = 0 To 2
           txt &= ChrW(Convert.ToInt32(Mid(inPort, 30 + i * 3, 2), 16))

       Next
       For i = 0 To 6
           txt &= ChrW(Convert.ToInt32(Mid(inPort, 33 + i * 3, 2), 16))
       Next
       For i = 0 To 6
           txt &= ChrW(Convert.ToInt32(Mid(inPort, 58 + i * 3, 2), 16))
       Next


بهذا الكود


كود :
       Dim abData() As Byte
        Dim Str As String

        Dim txt As String = ""
        sp1.Write("0902" & vbCr)
        inPort = sp1.ReadTo(">")

        ''0902
        ''014 
        ''0: 49 02 01 33 47 54 
        ''1: 4E 39 39 45 46 30 4B 
        ''2: 47 32 32 38 34 39 34 


        getvin1 = After(inPort, "0:")

        getvin2 = After(inPort, "1:")

        getvin3 = After(inPort, "2:")

        vin1 = getvin1.Substring(9, 10).Trim

        vin2 = getvin2.Substring(0, 22).Trim

        vin3 = getvin3.Substring(0, 22).Trim

        Dim b = vin1 & Space(8) & vin2 & Space(8) & vin3
        Dim a As New System.Text.StringBuilder
        For Each p As String In b.Split(" ")
            a.Append(Chr(Convert.ToInt32(p, 16)))
        Next



        Dim s = a.ToString
        MsgBox(s)


واشتغل معاي وطلع الرقم كامل 

ولكن عند الغاء تفعيل 
كود :
On Error Resume Next


يطلع لي مسج غلط



ولكن مع تفعيل

كود :
On Error Resume Next


لا يوجد اي غلط ويطلع معاي الرقم الحمدالله 

اشكرك شكرا على وقتك ومجهودك 

الان احاول اشتغل على الكتابه في حالت اريد تغيير رقم الشاصي الى رقم ثاني واذا واجهتني اي مشكله ساكتبها هنا


شكرا

اذا كنت تعتمد هذا المشروع في العمل (في الوظيفة)
فاحذر من من استخدام On Error Resume Next
لانها تمنع عنك معرفةالخطأ فتكون النتيجة خطأ وأنت لا تدري
فتقع في حرج مع رؤسائك

بالتوفيق

كلامك صحيح

ولكن لماذا طلع لي هذا الغلط

PHP كود :
System.ArgumentOutOfRangeException'Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: startIndex' 


out of range

هل احتاج اغير شي او ازيد في رقم معين

بعد تنفيذ كود قراءة الرد من الكمبيوتر في مشاركتي http://vb4arb.com/vb/showthread.php?tid=...#pid192887
أين ملف file.txt؟

ليكون الحل صحيحا



قمت بارساله استاذي في المشاركه الماضيه

ستاقوم بارساله من جديد


[attachment=29056]

هذا الملف ويعطيك العافيه
(24-06-23, 10:53 PM)dubai.eig كتب : [ -> ]قمت بارساله استاذي في المشاركه الماضيه

ستاقوم بارساله من جديد




هذا الملف ويعطيك العافيه


عذرا لم انتبه للملف 


دالة مبرمجة قديما لدينا في العمل وتعتمد على ReadLine وليس ReadTo قمت بتعديلها قليلا
الرقم 3 في Substring(3) هو لتجاوز الثلاث بايتات ‪ 49 01 02
PHP كود :
   Private Sub ButtonVID_Click(ByVal sender As ObjectByVal e As System.EventArgsHandles ButtonVID.Click
        TextVID
.Text StringDataReceived("0902").Substring(3)
 
       rtb()
 
   End Sub

    Private 
Function StringDataReceived(command As String) As String
        Dim tmp 
As String String.Empty
 
       sp1.Write(command vbCr)
 
       Dim line As String sp1.ReadLine.Trim inPort &= line vbCr
        If line
.Equals(commandThen
            line 
sp1.ReadLine().Trim inPort &= line vbCr
            Dim length 
Val("&h" line)
 
           Do
                line 
sp1.ReadLine().Trim inPort &= line vbCr
                If line
.Contains(":"Then line line.Split(":")(1).Trim
                tmp 
&= String.Concat((From x In line.Split(" "Select Chr("&h" x)))
 
               If tmp.Length length Then Exit Do
 
           Loop
        End 
If
 
       Return tmp
    End 
Function

 
   Private Sub rtb()
 
       rtb1.AppendText(inPort vbCr)
 
   End Sub 

VID الصحيح VIN وهي اختصار Vehicle Identification Number

سؤال: ما نوع وموديل وصورة جهاز فحص السيارات؟
(25-06-23, 02:48 AM)joly كتب : [ -> ]
(24-06-23, 10:53 PM)dubai.eig كتب : [ -> ]قمت بارساله استاذي في المشاركه الماضيه

ستاقوم بارساله من جديد




هذا الملف ويعطيك العافيه


عذرا لم انتبه للملف 


دالة مبرمجة قديما لدينا في العمل وتعتمد على ReadLine وليس ReadTo قمت بتعديلها قليلا
الرقم 3 في Substring(3) هو لتجاوز الثلاث بايتات ‪ 49 01 02
PHP كود :
   Private Sub ButtonVID_Click(ByVal sender As ObjectByVal e As System.EventArgsHandles ButtonVID.Click
        TextVID
.Text StringDataReceived("0902").Substring(3)
 
       rtb()
 
   End Sub

    Private 
Function StringDataReceived(command As String) As String
        Dim tmp 
As String String.Empty
 
       sp1.Write(command vbCr)
 
       Dim line As String sp1.ReadLine.Trim inPort &= line vbCr
        If line
.Equals(commandThen
            line 
sp1.ReadLine().Trim inPort &= line vbCr
            Dim length 
Val("&h" line)
 
           Do
                line 
sp1.ReadLine().Trim inPort &= line vbCr
                If line
.Contains(":"Then line line.Split(":")(1).Trim
                tmp 
&= String.Concat((From x In line.Split(" "Select Chr("&h" x)))
 
               If tmp.Length length Then Exit Do
 
           Loop
        End 
If
 
       Return tmp
    End 
Function

 
   Private Sub rtb()
 
       rtb1.AppendText(inPort vbCr)
 
   End Sub 

VID الصحيح VIN وهي اختصار Vehicle Identification Number

سؤال: ما نوع وموديل وصورة جهاز فحص السيارات؟

يعطيك العافيه

صحيح VID الصحيح VIN

قمت بتجربة الكود ولكن يتم معلق لا يستجيب فترة طويله 

انا المشروع الي اقوم به هو اضهار رقم vin 
ومن ثم الخطوه الثانيه تغيير الرقم الي رقم اخر 

اعمل علي السيارات الامريكيه gmc  

هذا الهدف من المشروع حاليا

بارك الله فيك وشكرا على مجهودك ساحتاج لك لعمليه التحديث بعد اتمام عمليه اضهار الرقم بشكل صحيح 


شكرا لوقتك صديقي
(25-06-23, 09:41 AM)dubai.eig كتب : [ -> ]يعطيك العافيه

صحيح VID الصحيح VIN

قمت بتجربة الكود ولكن يتم معلق لا يستجيب فترة طويله 

انا المشروع الي اقوم به هو اضهار رقم vin 
ومن ثم الخطوه الثانيه تغيير الرقم الي رقم اخر 

اعمل علي السيارات الامريكيه gmc  

هذا الهدف من المشروع حاليا

بارك الله فيك وشكرا على مجهودك ساحتاج لك لعمليه التحديث بعد اتمام عمليه اضهار الرقم بشكل صحيح 


شكرا لوقتك صديقي

يبدو ان جهازكم يختلف عن جهازنا في العمل

نسيت أن أذكر ليعمل ReadLine لابد من تفعيل الخاصية DtrEnable للSerialPort

بما انك اعتبرتني صديقك هل تمانع من التعديل على مشروعك بشكل مباشر عن طريق برنامج TeamViewer؟
الصفحات : 1 2