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

تحرير Hex Code للملفات

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

تحية طيبة وبعد

الى اخواني المبرمجين اتمنى من الله ان اجد في هذا المنتدى الرائع من يجيب عن سؤالي ويقدم لي المساعدة في هذا الموضوع... فثقتي بكم عالية

لدي مشروع جاهز قمت بتحميله من موقع اجنبي لتحرير Hex Code للملفات حيث ان هذا المشروع تم برمجته من خلال الفيجول دوت نت

المشروع يعمل بنجاح حيث يمكنني تحديد الملف وتظهر لي Hex Code الخاص به ويمكنني التعديل عليه ومن ثم حفظه لكن المشكله انه عندما اختار ملف سعته اكثر من 1 ميجا يبقى البرنامج لفترة قد تتجاوز الساعات علماً بأن الملفات التي اريد تعديلها حجمها 3 او 5 ميجا يبدو ان هناك تعديل على الكود الخاص به ....

كيف يمكنني فتح Hex Code للملفات الكبيرة بشكل سريع وعرض hex Code داخل TEXT BOX :unsure:

المشروع في المرفقات او على الرابط التالي ومن يستطيع التعديل او لديه مشروع اخر ارجو ان لا يبخل به ........

http://www.planet-source-code.com/vb/scripts/ShowZip.asp?lngWId=10&lngCodeId=7017&strZipAccessCode=tp%2Fh70171225

والف وشكر وتحية وجلاء لكم

dss.zip

تم تعديل هذه المشاركة بواسطة ahmad_ahmad في 4 مايو 2010 في 00:16

#2

أخي الكريم المشكلة واضحة

قم بتعديل الكود في التابع التالي:

Function BinarF(ByVal FilePath As String) As Byte()
        Dim f As System.IO.FileStream = System.IO.File.OpenRead(FilePath)
        f.Seek(0, System.IO.SeekOrigin.Begin)
        Dim j As Integer = 1024 * 500
        If f.Length - 1 < 1024 * 500 Then
            j = CInt(f.Length - 1)
        Else
            MsgBox("The file will not load completely: just 512KB")
        End If
        Dim binar(j) As Byte, i As Integer = 0
        For i = 0 To j
            binar(i) = CByte(f.ReadByte())
        Next
        Return binar
    End Function

واضح ان هذا التابع يعمل فقط لحد 512KB حتى انه هناك رسالة تظهر المفروض اذا تجاوز ذلك

حاول ان تعدل التالي ليصبح بالشكل التالي:

    Function BinarF(ByVal FilePath As String) As Byte()
        Dim f As System.IO.FileStream = System.IO.File.OpenRead(FilePath)
        f.Seek(0, System.IO.SeekOrigin.Begin)
        Dim j As Integer = 1024 * 5000
        If f.Length - 1 < 1024 * 5000 Then
            j = CInt(f.Length - 1)
        Else
            MsgBox("The file will not load completely: just 5MB")
        End If
        Dim binar(j) As Byte, i As Integer = 0
        For i = 0 To j
            binar(i) = CByte(f.ReadByte())
        Next
        Return binar
    End Function

1024 X 5000 = 5MB

بالتوفيق

تم تعديل هذه المشاركة بواسطة was_hal في 4 مايو 2010 في 14:13

1338031614581.png

" اللهــم إنّا مغلــوبــون فانتصــــر "

(اللهم سبحانك لا علم لنا إلا ما علمتنا إنك أنت العليم الحكيم)

#3

شكرا لك اخي

المشكلة ليست بحكم الملف لكن المشكلة عندما ازيد سعة الحجم بالكود يأخذ البرنامج وقت طويل لفتحه قد تستغرق ساعات

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