خلل مع, System Error. Code: 1400
#1
السلام عليكم ورحمة الله

اخواني الكرام, هذا خلل يحدث معي ولا ادري ما سببه,,
اكاد اجن لأىنه لا يحدث دآئما ولا يكاد يتبع قاعدة ليظهر الخلل, بل الخلل يحدث حسب هوى الجهاز والله المستعان,

PHP كود :
First chance exception at $75CA9617. Exception class EOSError with message
'System Error.  Code: 1400.
Ogiltig fönsterreferens (handle)'
. // هذه بالسويدية وتعني, 
Process MyProj.exe (5196) 

السطر الثالث بالسويدية, ويعني, نافذة المرجع (هاندل) خطأ,,

لا ادري ما السبب, المشورع به مكونات الإندي, وبعض المكونات الأساسية في الدلفي,
عند ظهور الخلل, يتوقف البرنامج عن العمل,,

هذا ما ورد في about.com
إقتباس :Error Code 1400
System error code 1400 means "Invalid window handle." This error code may also display as "ERROR_INVALID_WINDOW_HANDLE" or as the value 0x578.

ما سبب ظهور الخلل بارك الله لكم ؟

والسلام عليكم
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#2
وعليكم السلام ورحمة الله وبركاته
إقتباس :اكاد اجن
خيرا إن شاء الله، فأمر المؤمن كله له خير Smile
أولا...
هل تعمل على Delphi 2010 ؟
هل يحدث نفس الخلل عند تشغيل البرنامج خارج Delphi ؟
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
الرد
#3
السلام عليكم اخي كاش واحد,
الجوآب نعم على السؤآلين

بارك الله لك,
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#4

الرسالة تقول انك تحاول استخدام Handle غير صحيح
حاول تنفيذ برنامجك خطوة خطوة الى ان تقع بمكان الخطا
وبالتوفيق
الرد
#5
المشكلة تحدث وليس لي علآقة بالهاندل (قصدي انني لم ارسل او العب بالهاندل من الأصل),,

هذا موجز من المشكلة,,

عندي سرفر, استخدم مكونات الإندي, IdTcpServer

وعندي كلينت, استخدمه كي ارسل بعض الأوآمر للسرفر, IdTcpClient

اولا, افتح السرفر, السرفر به مكونات مثل PageControl وبه 4 من الصفحات بداخله + 2 من ال Buttons و 1 ListBox,

في الكلينت ارسل الأمر,
PHP كود :
form2.IdTCPClient1.IOHandler.WriteLn(IntToStr(ItemIndex)); 

الآن يقوم البرنامج بقرآته ويحدث الخلل بعدها,,

هنا ملآحظة, الخلل يحدث لو لم الّمس السرفر من الأصل,
يعني اولا افتح السرفر و بعدها اتصل من خلال الكلينت بالسرفر وهنا يحدث الخلل بعد لمس السرفر او الضغط عليه بالموس,, ملآحظة, السرفر يقرأ السترينج المرسل من الكلينت,

لكن لو فتحت السرفر و مثلا انتقلت الى TabSheet 2 في السرفر وبعدها اتصلت من خلال الكلينت بالسرفر لا يحدث الخلل و البرنامج يعمل على ما يرآم,, حتى لو رجعت الى tabSheet 1 لا يحدث الخلل,,
يعني بمجرد لمس السرفر وتغّير بين ال PageControls لا يحدث الخلل و تمشي الأمور كما هو المطلوب,

امّا لو نفذت البرنامج ولم اضغط على الفورم في السرفر ولم انتقل مثلا بين ال PageControl حينها يحدث الخلل المذكور في الأعلى,,

ملآحظة,
رسآلة الخلل تئتي بعد انتظار بعض الدقآئق,
يعني برنامح السرفر يعمل Hang تقريبا 1 الى 2 دقآئق وبعدها يظهر الخلل,

امّا لو عملت End Process من خلال ال TaskManager لبرنامج الكلينت يتم فصل الكلينت حينها و رسآلة الخلل المذكورة في الأعلى تظهر على الفور في برنامج السرفر,,

جزاكم الله خيرا
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#6

ما ذكرته غير كافي لايجاد مصدر الخطأ
حاول ارفاق مثال و لو بسيط
الرد
#7
طيب السلام عليكم,,

رفعت شبه المشروع, طبعا مع حذف الأمور الخآصة :laugh: + قليل من التعديلات,

الرآبط:
إقتباس :http://rapidshare.com/files/326030336/Er...t.zip.html

البرنامج جدا بسيط,
ان وآجهت اي كلمة سر او اسم مستخدم فهي Admin في كلا الحالتين,,

الخطوآت لكي يحدث الخلل,
افتح برنامج السرفر
سجل الدخول,

افتح برنامج الكلينت,
سجل الدخول,
انقر مرتين على احدى الغرف,

الآن حاول النقر على السرفر

والسلام عليكم ورحمة الله
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#8
إقتباس :المشكلة تحدث وليس لي علآقة بالهاندل (قصدي انني لم ارسل او العب بالهاندل من الأصل),,
إذا لم تكن لك علاقة بأي Handle فربما للمكونات علاقة:
كود :
form2.IdTCPClient1.IO[color=Red]Handle[/color]r.WriteLn(IntToStr(ItemIndex));
هناك أشياء تقوم بها أنت فيحدث خطأ من جهة المكون (ربما ناتج عن استخدامه بشكل خاطئ)
لا أدري أين الخلل بالتحديد،إذ لم يحدث معي الخلل الذي ذكرته.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...
الرد
#9
إقتباس :لا أدري أين الخلل بالتحديد،إذ لم يحدث معي الخلل الذي ذكرته.

همم, لا ادري, لكن عملت 2 من الفيديوهات,,
الأول يحدث به الخلل,, لم اضغط على الفورم قبل عمل كونكت من جهة الكلينت,,

الثآني, لا يحدث به خلل, لآنني تنقلت بين ال تاب في ال PageControl ,,

الرآبط الأول,
إقتباس :http://rapidshare.com/files/326063625/Error.zip.html

الرآبط الثآني,,
إقتباس :http://rapidshare.com/files/326065192/No...r.zip.html

بارك الله لكم
فرّج همّ المهمومين يا الله
اللهم فك قيد اسرانا و اسرى المسلمين
الرد
#10
السلام عليكم

كيف الأخبار و الأحوال

على ما أظن أن المشكلة هي في عملية ال Syncronization لأنك تقوم بعملية التحكم ب UI من خلال ال
OnExecute Procedure

المشكلة هي أن مكون TcpServer هو Multithread Component و هذا يعني أنك عندما تريد التعديل في ال Main Thread الخاصة بالبرنامج فإنك بحاجة للمزامنة مع ال Main Thread لكي لا يحصل مشاكل أثناء التنفيذ

في المرفقات كود معدل للسرفر(تم حذف الملفات التنفيذية و الداتا بيز, قم بوضعهم) مع المزامنة
قمت بتجريبه و لم أجد مشاكل عند التحكم بالواجهة الأساسية للبرنامج

سلامي

على فكرة أنا لم اطلع على الفيديوهات لأنو رافعهم على الرابد شير لأنو بقيت حوالي نصف ساعة لاستطيع تحميل ملف السورس لذلك **** أن ترفعهم على Mediafire إذا لم تحل المشكلة

بالنسبة لل Binding

ال Binding هو ربط أو دمج و هي خاصية تمكن السرفر بالاندماج مع الأي بي المعين يعني
عندما يكون لك أكثر من كرت شبكة على الجهاز و أردت أن يستقبل السرفر من أي بي معين دون الأخر فإنك بحاجة لهذه الميزة لأنها تمكن السرفر من الاستقبال من الأي بي المحدد
بمكنك إعداد هذه الميزة من خلال Design Mode إو خلال RunTime


الملفات المرفقة
.rar   Error_Chat.rar (الحجم : 154.64 ك ب / التحميلات : 40)
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم