PDA

View Full Version : نشان دادن اررور زمان خارج کردن برنامه



xrezax
شنبه 24 تیر 1391, 09:38 صبح
دوستان چطور می تونم به برنامم این قابلیتو بدم که اگر کاربر برنامه رو از Task Manager ببنده یک Msgbox نشون بده.

ho3ein.3ven
شنبه 24 تیر 1391, 11:02 صبح
سلام .
Private Sub Form_Unload(Cancel As Integer)
MsgBox "ok"
End Sub

xrezax
شنبه 24 تیر 1391, 14:38 عصر
سلام .
Private Sub Form_Unload(Cancel As Integer)
MsgBox "ok"
End Sub

کار نمی کنه .....
گر کاربر برنامه رو از Task Manager ببنده یک Msgbox نشون بده.

محسن واژدی
شنبه 24 تیر 1391, 15:57 عصر
سلام علیکم
کد زیر را بررسی کنید:
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If UnloadMode = vbAppTaskManager Then
MsgBox "Killer me: Task Manager!", vbExclamation
End If
End Sub


البته مشکلی که در این بین وجود دارد در Win7 اگر برنامه را از طریق TaskMgr ببندیم (End Task) رویداد Form_QueryUnload اتفاق نمی افتد، البته در XP مشکلی ندارد
نحوه ی بسته شدن فرم را هم میتوانیم در UnloadMode بررسی کنیم، به عنوان مثال اگر برنامه از task-mgr بسته شود UnloadMode حاوی مقدار 3 هست یعنی vbAppTaskManager
البته اگر برنامه Terminate شود برنامه بدون اتفاق افتادن این رویداد بسته میشود

موفق باشید

xrezax
شنبه 24 تیر 1391, 17:23 عصر
مرسی از توضیحاتتون.

اما این کد هم کار نکرد

محسن واژدی
شنبه 24 تیر 1391, 18:13 عصر
اما این کد هم کار نکرد

همانطور که عرض شد تنها در ویندوز xp جوابگو هست، با ویندوز سون سازگاری ندارد (sp6 را نصب کنید شاید برطرف شود)

موفق باشید