امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
نویسنده پیام
flush آفلاین
تازه وارد

ارسال‌ها: 13
موضوع‌ها: 3
تاریخ عضویت: اسفند ۱۳۹۱

تشکرها : 13
( 46 تشکر در 14 ارسال )
ارسال: #1
اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
چرا اجرای دستورات هندل کردن خطاها مثل
کد:
On Error Resume Next
تو محیط خود vb6 گیر و نگیر داره و حتماً باید کد رو کامپایل کرد ، بعد فایل exe رو اجرا کرد تا این دستورها اجرا بشن ؟؟Confused
۰۳-اسفند-۱۳۹۱, ۲۳:۵۷:۳۰
ارسال‌ها
پاسخ
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #2
RE: اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
(۰۳-اسفند-۱۳۹۱, ۲۳:۵۷:۳۰)flush نوشته است: چرا اجرای دستورات هندل کردن خطاها مثل
کد:
On Error Resume Next
تو محیط خود vb6 گیر و نگیر داره و حتماً باید کد رو کامپایل کرد ، بعد فایل exe رو اجرا کرد تا این دستورها اجرا بشن ؟؟Confused

چون خطا زمان اجرا اتفاق میافته!

واسه مطالعه بیشتر یه کتابهای کامپایلر مراجعه کنید
۰۴-اسفند-۱۳۹۱, ۰۰:۱۲:۴۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : helma, flush
flush آفلاین
تازه وارد

ارسال‌ها: 13
موضوع‌ها: 3
تاریخ عضویت: اسفند ۱۳۹۱

تشکرها : 13
( 46 تشکر در 14 ارسال )
ارسال: #3
RE: اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
(۰۴-اسفند-۱۳۹۱, ۰۰:۱۲:۴۶)babyy نوشته است: چون خطا زمان اجرا اتفاق میافته!

واسه مطالعه بیشتر یه کتابهای کامپایلر مراجعه کنید

فکر کنم سوالم رو بد مطرح کردم ؛ خطا که چه تو حالت دیباگ چه تو حالت کامپایل شده اتفاق میافته (اگر خطایی باشه) ولی اینکه اون خطا با اجرای دستور On Error Resume Next تو حالت دیباگ ، در نظر گرفته (ب)شه ، گیر و نگیر داره بعضی وقت ها این دستور اجرا میشه ، بعضی وقت ها اجرا نمیشه ؟

اگه بخوام سوالم رو دیگه خیلی اساسی با در نظر گرفتن صحبت شما (اگه برداشتم درست باشه که منظور شما اینه دستورات هندل کردن خطا تو حالت دیباگ اجرا نمیشن چون تو حالت خطاگیری هستیم !) بگم ، این میشه که تنظیمی برای در نظر گرفتن این دستور(ات) تو حالت دیباگ کردن هستش ؟
(آخرین ویرایش در این ارسال: ۰۴-اسفند-۱۳۹۱, ۰۵:۱۹:۲۶، توسط flush.)
۰۴-اسفند-۱۳۹۱, ۰۱:۱۸:۴۱
ارسال‌ها
پاسخ
تشکر شده توسط : babyy
babyy آفلاین
بازنشسته
*****

ارسال‌ها: 3,095
موضوع‌ها: 141
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 35081
( 26090 تشکر در 9068 ارسال )
ارسال: #4
RE: اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
یعنی شما میخوایی اول برنامت بنویسی On Error Resume Next
و با این علم که میدونی امکان داره بعضی جاها از روی خطا پرش کنه
دنبال روشی هستی که پرش نکنه و خطا رو نشون بده! آره؟

Biggrin
۰۴-اسفند-۱۳۹۱, ۰۱:۲۷:۲۴
وب سایت ارسال‌ها
پاسخ
flush آفلاین
تازه وارد

ارسال‌ها: 13
موضوع‌ها: 3
تاریخ عضویت: اسفند ۱۳۹۱

تشکرها : 13
( 46 تشکر در 14 ارسال )
ارسال: #5
RE: اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
برعکس من با علم اینکه بخشی از کدم خطا میده (مثلاً یه آرایه دارم و از دستور ubound استفاده کردم و به ناچار دستور در بخشی قرار گرفته که در اولین بار اجرا مقدار این ارایه nothing هستش ، پس خطا میده) حالا میخوام زمانی که دارم این کد رو تو محیط وی بی 6 مینویسم و باگ گیری میکنم این دیباگر وی بی 6 هی نیاد تو سر من و کد بزنه و بگه این چیه نوشتی :-)
(آخرین ویرایش در این ارسال: ۰۴-اسفند-۱۳۹۱, ۰۵:۱۸:۳۸، توسط flush.)
۰۴-اسفند-۱۳۹۱, ۰۳:۴۷:۱۵
ارسال‌ها
پاسخ
تشکر شده توسط : babyy
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #6
RE: اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
دوست عزيز

استفاده از دستور On Error Resume Next فلاش تانك نيست كه بزاري بالا سر كد هر خطايي داشت رو ببره !!

شما كه مي دوني همچين خطايي رخ مي ده خوب با يه دستور شرطي جلوش رو بگير

مثلا اگر مي دوني هميشه دفعه اول مشكل داره خوب يه شمارنده بزار تو تابعت و چكش كن :

IF I=1 then Exit Function

يا اگر مي دوني خطا فقط مربوط به همون آرايه است ،‌شرطي بزار كه Nothing‌بودن آرايه رو چك كنه :

If Array(1) is Nothing then Exit Function

درآخر باز محض احتياط واجب علما فتوا دادن يه دستور كنترل خطا هم بالا سر رويه بزاريد كه احيانا اگر خطا داد رشته كلام از

دستتتون خارج نشه اما باز هم Resume Next مكروهه بهتره از Goto ErrorHandler استفاده كنيد و متناسب با كد خطاي رخ داده

به كاربر پيغام بديد يا اينكه اجراي برنامه رو جاي ديگه اي منتقل كنيد

در ضمن بهتره بدونيد دستورات كنترل خطا در همه موارد عمل نمي كنن و بعضي اوقات مخصوصا در خصوص موارد Nothing

آرايه ها و عناصر ديتابيس همونجا پيغام خطا مي دن و بعد ممكنه ردش كنن كه بايد به هر طريقي از رخ دادن چنين خطاهايي

اجتناب كنيد

۰۵-اسفند-۱۳۹۱, ۱۰:۱۲:۲۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : babyy, flush
Payman62 آفلاین
مدیر بخش ویژوال بیسیک
*****

ارسال‌ها: 2,273
موضوع‌ها: 149
تاریخ عضویت: اسفند ۱۳۸۴

تشکرها : 1308
( 3661 تشکر در 942 ارسال )
ارسال: #7
RE: اجرا نشدن دستورات هندل کردن خطا در محیط IDE وی بی
سلام.
on error resume next همیشه عمل میکنه و مشکلی با محیط دیباگ نداره.
شاید شما دستور رو تو یه تابع استفاده کردید و خطا در تابع دیگری رخ داده.

به صحبت های جناب دیدی هم توجه کن. روش کارت اصولی نیست که یه on error بندازیو خودتو راحت کنی.
شاید آرایه یه مثال بود. ولی اگه واقعا همون مشکل آرایه رو داری با کمی کد نویسی میتونی هندلش کنی.
۰۵-اسفند-۱۳۹۱, ۲۱:۴۹:۳۵
ارسال‌ها
پاسخ
تشکر شده توسط : babyy, flush


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  بستن برنامه اکسل در حال اجرا aleas 1 1,064 ۲۳-شهریور-۱۳۹۸, ۱۷:۲۴:۱۱
آخرین ارسال: Di Di
  جلو گیری از اجرا فیلم aleas 3 4,380 ۲۰-بهمن-۱۳۹۶, ۱۹:۰۶:۱۴
آخرین ارسال: aleas
  اجرا نشدن keybd_event vbKeyMenu در ویندوز 8.1 javad917 3 2,627 ۱۳-آذر-۱۳۹۶, ۲۱:۲۰:۲۸
آخرین ارسال: javad917
  ارسال پارامتر به برنامه ی در حال اجرا. Blossom 42 27,149 ۰۹-اسفند-۱۳۹۳, ۲۲:۴۴:۱۶
آخرین ارسال: 9988
  کار با هندل policweb 12 9,341 ۲۴-شهریور-۱۳۹۲, ۰۹:۴۲:۲۳
آخرین ارسال: lord_viper
  سوالاتی درباره ی هندل javaweb 7 7,499 ۱۸-خرداد-۱۳۹۲, ۱۴:۲۱:۲۸
آخرین ارسال: Di Di
  راهنمایی برای اجرای دستورات پشت سر هم Rain_Saeid 2 3,507 ۱۰-خرداد-۱۳۹۲, ۱۲:۴۰:۴۲
آخرین ارسال: Rain_Saeid
  [سوال] یک سوال ساده در مورد هندل thinkdiff 1 2,838 ۱۴-فروردین-۱۳۹۲, ۱۳:۱۶:۲۸
آخرین ارسال: Di Di
Question [سوال] مشکل در دسترسی محیط VB6 به اکتیوایکس های پروژه flush 0 2,153 ۱۱-اسفند-۱۳۹۱, ۰۳:۲۴:۱۹
آخرین ارسال: flush
  ريفرش نشدن adodc lonelysam 1 2,207 ۲۴-دى-۱۳۹۱, ۰۹:۳۴:۴۶
آخرین ارسال: Di Di

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS