Привет!
Большое MDI приложение на VB6 (более сорока ActiveX Control и ActiveX DLL проектов; так же используются следующие контролы других разработчиков: EasyScroll, Janus GridEX 2000, MDI ActiveX).
На компьютере установлено: Windows 2000 sp2, VB6 sp5.
С помощью Wise Install Master делается инсталляционная версия программы и устанавливается на другой "чистый" (только Windows, больше ничего) компьютер.
Некоторое время работаем в программе (тестируем) и затем закрываем ее. После того как зарываются все окна программы получаем сообщение: "This Program Has Caused a Fatal Exception : and Will Be Terminated"
Попытался разобраться с этой ошибкой. Принудительно перед закрытием MDIForm закрываю все другие окна, закрываю все соединения с СУБД, уничтожаю все объекты (set object = nothing). Переопределяю событие главной (MDI form) формы:
Private Sub MDIForm_Terminate()
DestroyObjects
MsgBox "Пока все нормально"
End
End Sub
Так вот при закрытии программы сначала получаю сообщение "Пока все нормально", а затем "This Program Has Caused a Fatal Exception : and Will Be Terminated". Т.е. ошибка возникает, когда уже весь мой код на VB выполнен.
Так же пробовал следующее в одной из форм поместил кнопку Command1 и переопределил событие Command1_Click
Private Sub Command1_Click()
End
End Sub
Если немного поработать в программе и затем нажать на кнопку получаю все тоже сообщение о Fatal Exception.
Ошибка не возникает под VB IDE. Часто возникает под Windows 9x и Windows2000. Очень редко возникает под Windows NT 4.
Внимание, вопрос: как сделать так чтобы это сообщение об ошибке не появлялось?
Хорошо, если кто укажет на причину ее возникновения и способ(ы) устранения.
Но подойдет так же совет как избавиться от окна с сообщением "This Program Has Caused a Fatal Exception : and Will Be Terminated". Ведь программа все равно уже закрыта пользователем, весь мой код выполнен и нам с пользователем от операционной системы уже ничего не нужно. А сообщение "на посошок" раздражает.