|
|
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
Как реализовать следующую схему : Процедура ======== Оператор А1 Оператор А2 Оператор А3 ВыходИзПроцедуры Если произошла любая ошибка при выполнении А1 или А2 или А3 то выполнить Оператор Б1 Оператор Б2 Оператор Б3 ВыходИзПроцедуры Если произошла любая ошибка при выполнении Б1 или Б2 или Б3 то выполнить Оператор С1 Оператор С2 Оператор С3 ВыходИзПроцедуры КонецПроцедуры ============= ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 15:07 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
On Error GoTo метка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 16:07 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
Процедура ======== On Error GoTo метка1 Оператор А1 Оператор А2 Оператор А3 ВыходИзПроцедуры метка1 : On Error GoTo метка2 Оператор Б1 Оператор Б2 Оператор Б3 ВыходИзПроцедуры Метка2 : Оператор С1 Оператор С2 Оператор С3 ВыходИзПроцедуры КонецПроцедуры ============= Почему не работает ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 17:47 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
On Error Resume Next On Error GoTo 0 On Error Resume Next Err.Raise 6 ' Raise an overflow error. MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description Err.Clear ' Clear the error. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 18:18 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
При возникноваении ошибки VB начинает выполнять код обработки ошибок и переходит в особое состояние: - любая ошибка выполнения, которая может произойти в обработчике ошибок, обрабатывается как неперехватываемая; - для выходя из обработчика нельзя использовать операторы End Sub или End Function. Лучше использовать оператор Resume Label. Немного громоздко, но работает. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 11:40 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
tunderOn Error Resume Next On Error GoTo 0 On Error Resume Next Err.Raise 6 ' Raise an overflow error. MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description Err.Clear ' Clear the error. а как узнать номер ошибки ? спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 18:08 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
> Автор: Guest1 > tunder > On Error Resume Next > On Error GoTo 0 > > On Error Resume Next > Err.Raise 6 ' Raise an overflow error. > MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description > Err.Clear ' Clear the error. > > а как узнать номер ошибки ? Ты будеш очень удивлен: Err.Number и Err.Raise 6, где 6 - это номер инициируемого исключения > спасибо Не за что :) Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 18:16 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 18:23 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
to Worobjoff : у меня vbscript, он на On Error GoTo ругается, вот и не могу этой процедурой воспользоваться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 18:42 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
получается, когда пишем Err.Raise 6 присваиваем номер ошибки 6 ? потому что при этом Err.Number тоже 6 ? пишешь Err.Raise 7,- и Err.Number выдаёт 7 ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 18:46 |
|
||
|
VB обработка ошибок
|
|||
|---|---|---|---|
|
#18+
Guest1у меня vbscript, он на On Error GoTo ругается,VBScript и Visual Basic это два разных языка. Похожих, очень похожих, но разных. В VBScript можно только on error resume next делать (ну и on error goto 0). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.04.2008, 20:36 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=35240793&tid=2162433]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 392ms |

| 0 / 0 |
