Dr.Bronx
شنبه 14 آذر 1388, 12:53 عصر
سلام
در قسمت زیر یک ماژول رو مشاهده می کنید که با اون می تونید تمام خطاهایی که ممکنه در برنامه شما رخ بده رو کنترل کنید و یک Log از اون با برچسب تاریخ ، ساعت ، نام فرم و شرح و شماره خطا داشته باشید . مانند عکس زیر :
http://barnamenevis.org/forum/attachment.php?attachmentid=40728&stc=1&d=1078972808
طرز تهیه : :لبخند:
اول یک ماژول به پروژه خودتون اضافه کنید و کدهای زیر رو داخل اون پیست کنید .
.:: به علت محدودیت تایپ کاراکتر ماژول کامل را از ضمیمه دانلود نمایید ::.
ماژول کامل دارای بیش از : 870 خطای مختلف می باشد.
Public Sub ErrHandler(FrmName As String)
Select Case Err.Number
Case 3
MsgBox "Return without GoSub", vbCritical, "خطا"
'------------------------------------------------
Case 5
MsgBox "Invalid procedure call", vbCritical, "خطا"
'------------------------------------------------
Case 6
MsgBox "Overflow", vbCritical, "خطا"
'------------------------------------------------
Case 7
MsgBox "Out of memory", vbCritical, "خطا"
'------------------------------------------------
Case 9
MsgBox "Subscript out of range", vbCritical, "خطا"
'------------------------------------------------
'...
'...
'...
Case Else
MsgBox Err.Description, vbCritical, "خطا"
End Select
Open App.Path + "\Log.log" For Append As #1
Print #1, "[" & Date$ & "] - [" & Time$ & "] ~" & FrmName & "~ | " & Err.Number & SPACE(2) & "*" & SPACE(2) & Err.Description
Close #1
Err.Clear
End Sub
حالا توی هر سابی که دارید باید کدهای زیر رو اضافه کنید .
On Error GoTo Err_Handle
'اینجا دستورات شما قرار داره.
Exit Sub
Err_Handle:
ErrHandler Me.Name
خوب حالا خاصیت این کار چیه ؟ چون ما می تونیم مثل قبل از همون err.description استفاده کنیم.
پیغام خطاهای این ماژول داریم فارسی می کنیم و می تونید برای تمام پیغامها به کاربر پیغام خطا نشون بدین.
هر کدوم از دوستان هم که خواست کمک کنه در خدمتشون هستیم :بامزه:
مثلا اینطوری ترجمه کنید :
شماره خطا
شرح خطا به فارسی
اینطوری :
11
تقسیم بر صفر امکان پذیر نیست .
و حتما داخل تگ نقل قول (http://barnamenevis.org/forum/images/editor/quote.gif) قرار بدید
لطفا از ارسال پست های بی محتوا و خارج از بحث تاپیک شدیدا خودداری نمایید.
در انتهای کار وقتی که پیغام ها فارسی شد یک Dll ساخته میشه تا همه بتونن از اون استفاده کنند .
موفق و موید باشید ./
در قسمت زیر یک ماژول رو مشاهده می کنید که با اون می تونید تمام خطاهایی که ممکنه در برنامه شما رخ بده رو کنترل کنید و یک Log از اون با برچسب تاریخ ، ساعت ، نام فرم و شرح و شماره خطا داشته باشید . مانند عکس زیر :
http://barnamenevis.org/forum/attachment.php?attachmentid=40728&stc=1&d=1078972808
طرز تهیه : :لبخند:
اول یک ماژول به پروژه خودتون اضافه کنید و کدهای زیر رو داخل اون پیست کنید .
.:: به علت محدودیت تایپ کاراکتر ماژول کامل را از ضمیمه دانلود نمایید ::.
ماژول کامل دارای بیش از : 870 خطای مختلف می باشد.
Public Sub ErrHandler(FrmName As String)
Select Case Err.Number
Case 3
MsgBox "Return without GoSub", vbCritical, "خطا"
'------------------------------------------------
Case 5
MsgBox "Invalid procedure call", vbCritical, "خطا"
'------------------------------------------------
Case 6
MsgBox "Overflow", vbCritical, "خطا"
'------------------------------------------------
Case 7
MsgBox "Out of memory", vbCritical, "خطا"
'------------------------------------------------
Case 9
MsgBox "Subscript out of range", vbCritical, "خطا"
'------------------------------------------------
'...
'...
'...
Case Else
MsgBox Err.Description, vbCritical, "خطا"
End Select
Open App.Path + "\Log.log" For Append As #1
Print #1, "[" & Date$ & "] - [" & Time$ & "] ~" & FrmName & "~ | " & Err.Number & SPACE(2) & "*" & SPACE(2) & Err.Description
Close #1
Err.Clear
End Sub
حالا توی هر سابی که دارید باید کدهای زیر رو اضافه کنید .
On Error GoTo Err_Handle
'اینجا دستورات شما قرار داره.
Exit Sub
Err_Handle:
ErrHandler Me.Name
خوب حالا خاصیت این کار چیه ؟ چون ما می تونیم مثل قبل از همون err.description استفاده کنیم.
پیغام خطاهای این ماژول داریم فارسی می کنیم و می تونید برای تمام پیغامها به کاربر پیغام خطا نشون بدین.
هر کدوم از دوستان هم که خواست کمک کنه در خدمتشون هستیم :بامزه:
مثلا اینطوری ترجمه کنید :
شماره خطا
شرح خطا به فارسی
اینطوری :
11
تقسیم بر صفر امکان پذیر نیست .
و حتما داخل تگ نقل قول (http://barnamenevis.org/forum/images/editor/quote.gif) قرار بدید
لطفا از ارسال پست های بی محتوا و خارج از بحث تاپیک شدیدا خودداری نمایید.
در انتهای کار وقتی که پیغام ها فارسی شد یک Dll ساخته میشه تا همه بتونن از اون استفاده کنند .
موفق و موید باشید ./