امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
آیا در زمان کد‌نویسی هستیم؟ Do InIDE
نویسنده پیام
Darg غایب
مدير بازنشسته
*****

ارسال‌ها: 894
موضوع‌ها: 40
تاریخ عضویت: تير ۱۳۸۴

تشکرها : 381
( 702 تشکر در 190 ارسال )
ارسال: #1
آیا در زمان کد‌نویسی هستیم؟ Do InIDE
آیا در زمان کد‌نویسی هستیم؟ Do InIDE

در برخی مواقع لازم هست برنامه ما نسبت به این دو حالت واکنش مخصوص به خودش رو داشته باشه:
- برنامه در زمان طراحی و نوشتن کد اجرا میشه InIDE
- یا برنامه بعد از کامپایل شدن از فایل اجرایی (یا فرق نمی‌کنه فایل کامپایل شده) اجرا میشه

مثلا شما در زمان نوشتن برنامه برای تست سرعت کد‌هایی رو می‌نوسید که اون کد‌ها فقط در زمان طراحی به درد ما می‌خورند و بعد از کامپایل به گزارشی که اون کد‌ها ارائه می‌دند احتیاجی نیست. در واقع شما لازم دارید که یک نوع کد خاص تنها در زمان کد‌نویسی اجرا بشه...

اما برنامه ما باید از کجا بفهمه که در زمان کد‌نویسی InIDE اجرا شده یا نه؟
برای این کار در اینجا سه روش رو معرفی می‌کنم که همگی با استفاده از این خاصیت کار می‌کنند که "Debug درون برنامه کامپایل شده حذف می‌شه!". امیدوارم به درد دوستان بخوره.

روش اول
کد:
Private Function IsEXE() As Boolean
   On Error GoTo IDE
   Debug.Print 1 / 0
   IsEXE = True

IDE: Exit Function
End Function
روش دوم
کد:
Private Function IsEXE() As Boolean
Static bEXE As Boolean

   If Not bEXE Then
      bEXE = True
      Debug.Assert IsEXE() Or True
      IsEXE = bEXE
   End If
   bEXE = False

End Function
روش سوم
کد:
'General
Private m_bInIDE As Boolean

Public Function IsInIDE() As Boolean
    Debug.Assert (SetIDEFlag())
    IsInIDE = m_bInIDE
End Function

Private Function SetIDEFlag() As Boolean
    m_bInIDE = True
    SetIDEFlag = m_bInIDE
End Function

یادتون باشه برای تست کد‌ها باید یک بار برنامه رو در وضعیت طراحی اجرا کنید و یک بار هم بعد از کامپایل!
همین کد‌ها رو داخل یک پروژه تست گذاشتم می‌تونید دانلود و استفاده کنید...

راستی برنامه های کمکی مثل همون VbAdvande هم هستند که روش های خاص خودشون رو برای این کار ارائه میدند...
اگر شما هم روشی هست که می دونید اینجا مطرح کنید ما هم استفاده کنیم Shy


فایل‌(های) پیوست شده
.rar   DoInIDE.rar (اندازه: 52.54 KB / تعداد دفعات دریافت: 69)
۲۵-فروردین-۱۳۸۷, ۲۱:۵۷:۴۶
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : ajlajlajl, hamed_Arfaee, mbza11, mojtabamalaekeh, godvb, vz67, Vb6Moderator


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  اجرای خودکار برنامه در یک زمان خاص iman_yakoza 22 24,285 ۰۷-اسفند-۱۳۹۳, ۱۷:۰۶:۵۹
آخرین ارسال: Ghoghnus
  محاسبه میان چند ساعت و زمان مختلف sepahbod 5 6,496 ۰۴-تير-۱۳۹۲, ۱۶:۴۰:۴۵
آخرین ارسال: Ghoghnus
  راهنمایی برای چند مورد در برنامه نویسی VB6 Rain_Saeid 14 11,460 ۱۲-شهریور-۱۳۹۱, ۱۰:۰۸:۲۰
آخرین ارسال: vigraz
Wink تواناترین زبان برنامه نویسی دنیا مرد یخی 3 5,391 ۳۰-آبان-۱۳۹۰, ۱۱:۵۴:۵۳
آخرین ارسال: lord_viper
  فارسی‌نویسی صحیح در برنامه‌ها Darg 9 13,270 ۰۹-فروردین-۱۳۹۰, ۱۱:۴۴:۲۳
آخرین ارسال: farzinf
  برنامه نویسی کنترل microsoft comm control 6.0 miladseven 0 2,443 ۰۸-اسفند-۱۳۸۹, ۲۲:۰۳:۵۵
آخرین ارسال: miladseven
  رسم دایره در اتوکد از طریق کد نویسی در محیط ویژوال بیسیک 6 AmirPasha_vb 3 5,577 ۰۲-آذر-۱۳۸۹, ۰۰:۲۲:۴۸
آخرین ارسال: civilmans
  یه برنامه متن نویسی ولی ........... behnam2011 4 3,681 ۰۹-آبان-۱۳۸۹, ۱۷:۰۰:۲۴
آخرین ارسال: shadijon
  ازافه کردن کنترل به فریم در زمان اجرا mohamadpk 3 3,600 ۱۱-اسفند-۱۳۸۸, ۰۴:۰۵:۲۸
آخرین ارسال: mohamadpk
Exclamation چطوری تو اکتیویکس light picture view در زمان اجرا عکس بگذارم . silverm 1 2,162 ۰۳-اسفند-۱۳۸۸, ۰۸:۳۶:۱۹
آخرین ارسال: toopdanlod

پرش به انجمن:


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

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