صراحة لا أدري فليس لدي العلم الكافي لفهم ذلك الخطأ،
ولكن قد يكون السبب في طريقة الكود وتسبب كما ذكر الأخ بودي بخصوص عدم إستيعاب حجم البيانات المدخلة للمصفوفة،
يعني الكود عمل لوب مغلق كما أتذكر أن هذا اسمه وهو الدوران حول نفسه وبه كود يتسبب في ملئ الذاكرة فيحصل خطأ.
(04-01-20, 02:21 AM)جميل كتب : [ -> ]صراحة لا أدري فليس لدي العلم الكافي لفهم ذلك الخطأ،
ولكن قد يكون السبب في طريقة الكود وتسبب كما ذكر الأخ بودي بخصوص عدم إستيعاب حجم البيانات المدخلة للمصفوفة،
يعني الكود عمل لوب مغلق كما أتذكر أن هذا اسمه وهو الدوران حول نفسه وبه كود يتسبب في ملئ الذاكرة فيحصل خطأ.
فعلا ده التحليل المنطقي للخطاء ولكن يخفي علينا ايجاد حل له

أخي انا عطيتك حل بأستخدام ال Loop لان عالاغلب ملفك الذي يحتوي بيانات نصية كبير جدآ لذلك وضعت الثقل على الليست بوكس بدل المصفوفة المنشئة
تأكدلي من ملفك النصي هل فعلآ كبير جدآ ؟
وتأكدلي من التعديل هذا هل يعمل البرنامج بشكل صحيح او لا؟
كود :
On Error Resume Next
For Each txt As String In TextBox1.Text.Split(vbNewLine)
Application.DoEvents()
Dim t As String = System.Text. _
RegularExpressions.Regex.Match(txt, "member_id=(.+)&").Groups(1).Value
If Not t = "" And Not ListBox1.Items.Contains(t) Then
ListBox1.Items.Add(txt)
End If
Next
On Error Resume Next هذا الجملة توضع في بداية السطر
Application.DoEvents() حتى نتأكد ان تم الوصول لبعض البيانات قبل الخطأ
لفت نظري شيء !! لماذا تضع هذا الكود في حدث التايمر؟؟
الكود صحيح أخى ويعمل بشكل جيد...
حل سريع قد ينفع معك :-
لو بتشغل المشروع من داخل بارتشن خرجه على سطح المكتب وشغله أو شغلة من القرص سى..
(04-01-20, 12:46 PM)3booody كتب : [ -> ]أخي انا عطيتك حل بأستخدام ال Loop لان عالاغلب ملفك الذي يحتوي بيانات نصية كبير جدآ لذلك وضعت الثقل على الليست بوكس بدل المصفوفة المنشئة
تأكدلي من ملفك النصي هل فعلآ كبير جدآ ؟
وتأكدلي من التعديل هذا هل يعمل البرنامج بشكل صحيح او لا؟
كود :
On Error Resume Next
For Each txt As String In TextBox1.Text.Split(vbNewLine)
Application.DoEvents()
Dim t As String = System.Text. _
RegularExpressions.Regex.Match(txt, "member_id=(.+)&").Groups(1).Value
If Not t = "" And Not ListBox1.Items.Contains(t) Then
ListBox1.Items.Add(txt)
End If
Next
On Error Resume Next هذا الجملة توضع في بداية السطر
Application.DoEvents() حتى نتأكد ان تم الوصول لبعض البيانات قبل الخطأ
لفت نظري شيء !! لماذا تضع هذا الكود في حدث التايمر؟؟
هجربه + اضعه في التايمر لانه بيشتغل كل مده من الوقت
عفوآ كان لدي خطأ بسيط لان ماجربته
عدل هالشكل
كود :
On Error Resume Next
For Each txt As String In TextBox1.Text.Split(vbNewLine)
Application.DoEvents()
Dim t As String = System.Text. _
RegularExpressions.Regex.Match(txt, "member_id=(.+)&ref").Groups(1).Value
If Not t = "" And Not ListBox1.Items.Contains(t) Then
ListBox1.Items.Add(t)
End If
Next
يا اخي لايوجد خطأ
يمكن بسبب WebBrowser احذف السطر الخطأ وانسخ البيانات يدويآ عالتكست وجرب ماراح تلقي خطأ
ولا ادري انته مرة تحمل من ملف ومرة من ويب , ما فاهم عليك ابد
(06-01-20, 11:16 AM)3booody كتب : [ -> ]يا اخي لايوجد خطأ
يمكن بسبب WebBrowser احذف السطر الخطأ وانسخ البيانات يدويآ عالتكست وجرب ماراح تلقي خطأ
ولا ادري انته مرة تحمل من ملف ومرة من ويب , ما فاهم عليك ابد
الله يبارك لك اخ عبودي
كل الفكره ان انا احمل سورس كود صفحه انترنت واستخرج منها بعض المعلومات
لكن عند ارفاق المشروع في الموضوع حملت البيانات في ملف للتسهيل فقط
طيب اخ عبودي مافيش اي حل ان اجلب سورس كود الصفحه بدون ما تحصل هذه المشكله
انطيني رابط الصفحة خلي اجربلك ان شاء الله اتوصل لنتيجة