Автокликер Clickermann :: Форум
Основной раздел => Ошибки => Topic started by: DVS on September 30, 2018, 10:25:22 PM
-
Интересная ситуация -
хочу включить запись в лог-файл при определённом уровне отладки.
Однако, при $debug == 2 (надо включать) - лог-файл НЕ создаётся,
а при любом другом значении - СОЗДАЁТСЯ
где собака порылась ?
#name "test"
$debug = 2
IF ( $debug != 0 )
LOGSHOW(1, 80, 740)
LOGCLEAR()
LOGWRITE( "Инфа - ", $_date_str, " ", $_time_h, ":",$_time_m, " KM: ", $_ver_self )
LOGWRITE( "Инфа - ", $_ver_sys, ", Max X: ", $_xmax, ", Max Y: ", $_ymax )
LOGWRITE( "-----------------------------------------------" )
END_IF
IF ( $debug == 2 )
PRINT("!!! Debug = ", $debug, " !!!")
#logfile "test.log"
TFCLEAR( "test.log", 1 )
ELSE
PRINT("!!! ELSE Debug = ", $debug, " !!!")
END_IF
HALT
-
Ничего интересного.
Ты сам удаляешь логфайл строкой TFCLEAR( "test.log", 1 )
-
ДИРЕКТИВЫ ПРЕПРОЦЕССОРА.
Это страшное для неподготовленного человека определение означает ряд команд, которые выполняются только в момент загрузки скрипта и в дальнейшем в работе не участвуют.
Это значит, что не важно куда ты всунешь строку с #logfile "test.log". Записывать лог в файл будет в любом случае.
Однако, при $debug == 2 (надо включать) - лог-файл НЕ создаётся,
а при любом другом значении - СОЗДАЁТСЯ
Как написано в скрипте, так и работает - если $debug = 2, то удаляем файл тест.лог с помощью TFCLEAR( "test.log", 1 ) . То есть он создается и сразу удаляется.
-
Хм, согласен, но почему лог-файл создаётся при НЕвыполнении условия ?
-
Пардон - не дочитал. Буду думать, спс
-
Спасибо ещё раз, результат получил ...