Страница: 1 |
Обработчик ошибок ни откуда не берется и нигде не устанавливается. Обработчик ошибок - ето кусок кода, цель которого в обработке ошибок. Вот небольшой пример : On error goto ErrH 'Вот ErrH и будет обработчиком ошибок ... 'Тут сам код Exit Sub Selecat case err.Number Вот этот кусок кода и есть обработчик ошибок. Вся фишка - при возникновении ошибки тебя не выкинет из проги, а перекинет на обработчик ошибок. С дальнейшей ихз обработкой. Итак... Облекчить твою проблему можно так. Public Sub Error (ErrNum as Integer) Спасибо что откликнулись.......но мою возникшую проблему это не решило..... Проблема следующая: Писал проект VB под W98, тестировал -все работает...Запустил откомпилированную прогу под XP - тоже работает,все клево...Но появилась потребность слегка подкорректировать код...открываю VBпроект в этом самом XP, и он пишет,что нехватает каких-то библиотек(открывает окно Project - Reference ) и предлагает их выбрать.(ёёё .... ничего дополнительного при работе в W98 я не подключал).Далее стал дебажить код - выяснил, что ошибка вызывается из-за того, что не обрабатывается On Error Goto . Вот и решил спросить.. On Error GoTo m: Дело в том что я не знаю название этой библиотеки... Вместе с VB загружаются автоматически:(Project - References) Visual Basic For Application Visual Basic runtime objects and procedures Visual Basic objects and procedures Без них VB, я так понимаю, работать не будет...они загружаются и в XP..больше я ничего не подключал. Страница: 1 |
Вопрос: Обработчик ошибок
Добавлено: 26.05.04 05:48
Автор вопроса:
Surok
Есть такая проблема с обработчиком ошибок при переносе программы с W98 на W2000/XP..Обьясните, пожалуйста, что такое обработчик ошибок...Где его взять и как установить...Может быть вопрос вопрос задается в тысячный раз, тогда посоветуйте инфу по данной теме (хотелось бы также узнать о совместимости VB программ с разными версиями windows)...
Ответы
Всего ответов: 9
Номер ответа: 1
Автор ответа: Kodo
Разработчик Offline Client
ICQ: 293048085
Вопросов: 37
Ответов: 457
Профиль | | #1
Добавлено: 26.05.04 09:51
ErrH:
Case 6
MsgBox "Переполнение !"
i=0
Resume Next
Case 13
MsgBox "Где-то несоответствие типов"
Case Else
MsgBox "Какая-то ошибка : " & Err.Description
End select
Номер ответа: 2
Автор ответа: sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #2
Добавлено: 26.05.04 11:13
угу... а если еще весь код пронумировать как в старом васик:
10 rem
20 print...
30 run
то при возникновении ошибки строчку можно будет узнать с пом. Erl (вроде так пишется...)
Номер ответа: 3
Автор ответа: Millenium
ICQ: 629966
Вопросов: 118
Ответов: 903
Web-сайт:
Профиль | | #3
Добавлено: 26.05.04 16:56
Создаёш модуль и называеш его mdlError.
А внутри кода пишеш:
Select Case ErrNum
Case 57
Answ = Msgbox("Файл не найден. Причин навалом: Либо ты не правильно укозал либо его нету (небыло)" _
& vbCrLf & "Хочеш ещё раз попробовать?", vbYesNo, "Программа")
If Answ = vbYes then call OpenFile
Case 105
Msgbox "Опаньки! Не хаватка ресурсов!!!"
Case Else
Answ = MsgBox("Программа выполнела ошибку!" & vbCrLf & "Нажмите 'Да' чтоб закрыть прогамму или 'Нет' чтобы попытатся продолжить?"), vbYesNo
if Answ = vbYes Then
Unload frmMain
Set frmMain = Nothing
End
Else
Resume Next
End if
End Select
End Sub
Номер ответа: 4
Автор ответа: Surok
Вопросов: 36
Ответов: 106
Профиль | | #4
Добавлено: 26.05.04 18:02
m:
If Err.Number = 340 Then
Load grid(i)
End If
Номер ответа: 5
Автор ответа: Kodo
Разработчик Offline Client
ICQ: 293048085
Вопросов: 37
Ответов: 457
Профиль | | #5
Добавлено: 26.05.04 21:09
Ну так это не совместимость проекта с XP, это просто в XP этой библиотеки нет. Посмотри имя этой библиотеки внизу окна, скопируй её в %WinDir%\System32 и зарегистрируй командой regsvr32 [имя библиотеки]. Все должно заработать.
Номер ответа: 6
Автор ответа: sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #6
Добавлено: 27.05.04 00:07
или если лень регистрировать, просто укажи к ней путь, и она будет зарегистрирована автоматически при присоединении к проекту...
Номер ответа: 7
Автор ответа: Surok
Вопросов: 36
Ответов: 106
Профиль | | #7
Добавлено: 27.05.04 01:20
Копаем дальше....
Номер ответа: 8
Автор ответа: sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #8
Добавлено: 27.05.04 01:35
можешь посмотреть, открыв файл проекта в блокноте...
Номер ответа: 9
Автор ответа: Millenium
ICQ: 629966
Вопросов: 118
Ответов: 903
Web-сайт:
Профиль | | #9
Добавлено: 27.05.04 10:35
SNe prav! Otkroy v bloknote i posmotri.
MOjesh i v reference posmotret! MOjet tam 4to-to stoit?