Что нового

Как правильно использовать @error?

And

Новичок
Сообщения
36
Репутация
0
Объясните пожалуйста. Например есть функция

Код:
Func MyFunction()
Код с ошибкой при выполнении
EndFunc


, которая выдает ошибку после запуска. Как использовать @error, чтобы выполнение этой функции с ошибкой в этот раз было пропущено?

Код:
Seterror (MyFunction() , 0)
не пропускает, ошибка выдается, как и если написать

Код:
If MyFunction()	= @error Then
MsgBox(4096,"Error", "Error")
Else
EndIf


Понадобилось пропускать ошибку, которая может появиться (в коде сделал специально ошибку, чтобы попробовать пропускать выполнение через @error)
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
And [?]
Объясните пожалуйста.
Код:
$i = 0
; $i = 1
MyFunction($i)
If @error Then
	MsgBox(16, @ScriptName, 'Error!')
	Exit
EndIf
MsgBox(64, @ScriptName, 'Ok!')

Func MyFunction($i)
	If Not $i Then
		; Код с ошибкой при выполнении
		Return SetError(1, 0, 0)
	EndIf
	Return SetError(0, 0, 1)
EndFunc


P.S. Не ленитесь читать справку!
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Если нет ошибки, можно возвращать без SetError().
Код:
;~ ...
Return 1
;~ ...
 
Верх