Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - lev12348

Pages: [1]
1
Ошибки / Re: Функции KEYSTRING() символ '+'
« on: June 14, 2016, 12:12:13 PM »
На вин 10 64-бита в ворде пишется правильно если раскладка клавы на РУС .

2
Тоже Windows 10 , пока не сделал " Если не запускается на Win8 (и прочих)" , .bmp
не находил , а так всё работало .

3
При запуске скрипта , долбим по закладке пока не выйдет окно с вводом номера , при нажатии ОК , в INI сохраняем время от которого начинаем отсчёт 15 мин +- несколько секунд , скрипт " Вывод даты" использую для нормального просмотра времени в INI .
Зачем при запуске скрипта старый INI , ведь время начнётся после активации номера .
В общем пробовал разобраться с подпрограммой , чтоб время отображала в INI в момент перезапуска "ОК" не получается , а получилось , как вы пишете не правильно Но всё работает как мне надо
Code: (clickermann) [Select]
IF ( $f = 0 )
   $f = 1
   TFCLEAR("log.txt", 0) // 0 стирает содержимое файла, 1 удаляет файл (причем любой)
   TFCLEAR("intersvyaz.ini", 0)
   WAITMS ( 100 )
   LOGWRITE ( " START" )
   EXECUTE ( "firefox.exe" )
   
   WAIT (9)
   
   HSET ( WNDFIND ( "Mozilla Firefox", 0 ), 1 )
   
   #logfile
   
   $t=INT(STRCONCAT("0",INIREAD("intersvyaz.ini","time",$td)))
   
END_IF

IF ( $t < $_time_t )
   
   $check = 0  //  0 не найдено, 1 найдено
   WHILE ( $check = 0 )   // ожидание окончания
     
      WNDSTATE ( WNDFIND ("Mozilla Firefox"), 1)
      WNDPOS   ( WNDFIND ("Mozilla Firefox"), 10,10)
      WNDSIZE  ( WNDFIND ("Mozilla Firefox"), 500,480)
     
      WAITMS ( 100 )
     
      GETSCREEN
      // поиск окна для ввода номера
      IF_PICTURE_IN(50,100,$_xmax,$_ymax,"2.bmp",-1,90)
         LCLICK ( $_return1+100, $_return2+5 )
         
         WAITMS ( 100 )
         
         KEYSTRING ( "9517839500", 10 )
         
         WAITMS ( 100 )
         
         GETSCREEN
         // поиск окна "OK"
         IF_PICTURE_IN(100,200,$_xmax,$_ymax,"3.bmp",-1,90)
            LCLICK ( $_return1+10, $_return2+5 )
           
            WAITMS ( 100 )
           
            $t = $_time_t + 898
           
            #include "Вывод даты.cms"
           
            INIWRITE("intersvyaz.ini","time",$t,$td)
           
            WAIT ( 2 )
           
            LCLICK ( $x, $y )
           
            WAIT ( 1 )
           
            WNDSTATE ( WNDFIND ("Mozilla Firefox"), 0 )
           
            WAITMS ( 100 )
           
         END_IF
         
         $check = 1  // если найдено выходим из цикла
         
      ELSE  // если не найдено
         
         GETSCREEN
         // поиск закладки
         COLORMODE ( 6, 100,50, $_xmax,$_ymax )
         IF_PICTURE_IN(100,50, $_xmax,$_ymax,"1.bmp",-1,90)
            LCLICK ( $_return1+10, $_return2+3 )
           
            WAIT ( 2 )
           
            $x = $_return1+10
            $y = $_return2+3
           
            LOGWRITE (" END")
           
         END_IF
      END_IF
   END_CYC
END_IF

WAITMS ( 100 )
В "Вывод даты.cms" добавил :
Code: (clickermann) [Select]

$td=STRCONCAT($th,":",$tm,":",$ts," date:",$dd,"."$dm,"."$dy)

LOGWRITE(" Перезапуск  date: ",$dd,".",$dm,".",$dy)
Вот результат :INI
Code: [Select]
[00:32:03 date:14.05.2016]
time=1463186821
[00:47:09 date:14.05.2016]
time=1463187727
log :
Code: [Select]
0:31:59  END
0:32:03  Перезапуск  date: 14.05.2016
0:47:06  END
0:47:09  Перезапуск  date: 14.05.2016

4
Получилось  вот так , работает скрипт , что ещё можно исправить , и как при первом запуске затирать INI и LOG .
Code: (clickermann) [Select]
IF ( $f = 0 )
   $f = 1
   
   LOGWRITE ( " START" )
   EXECUTE ( "firefox.exe" )
   
   WAIT (9)
   
   HSET ( WNDFIND ( "Mozilla Firefox", 0 ), 1 )
   
   #logfile
   
   #include "Вывод даты.cms"
   
   SUB ( Вывод даты )
      $td=(STRCONCAT($th,":",$tm,":",$ts," date:",$dd,"."$dm,"."$dy))
      LOGWRITE(" Перезапуск  date: ",$dd,".",$dm,".",$dy)
   END_SUB
   
   $t=INT(STRCONCAT("0",INIREAD("intersvyaz.ini","time",$td)))
   
END_IF

IF ( $t < $_time_t )
   
   $check = 0  //  0 не найдено, 1 найдено
   WHILE ( $check = 0 )   // ожидание окончания
     
      WNDSTATE ( WNDFIND ("Mozilla Firefox"), 1)
      WNDPOS   ( WNDFIND ("Mozilla Firefox"), 10,10)
      WNDSIZE  ( WNDFIND ("Mozilla Firefox"), 500,480)
     
      WAITMS ( 100 )
     
      GETSCREEN
      // поиск окна для ввода номера
      IF_PICTURE_IN(50,100,$_xmax,$_ymax,"2.bmp",-1,90)
         LCLICK ( $_return1+100, $_return2+5 )
         
         WAITMS ( 100 )
         
         KEYSTRING ( "95xxxxxxxx", 10 )
         
         WAITMS ( 100 )
         
         GETSCREEN
         // поиск окна "OK"
         IF_PICTURE_IN(100,200,$_xmax,$_ymax,"3.bmp",-1,90)
            LCLICK ( $_return1+10, $_return2+5 )
           
            WAITMS ( 100 )
           
            Вывод даты ( )
           
            $t = $_time_t + 897
            INIWRITE ( "intersvyaz.ini", "time", $t, $td )
           
            WAIT ( 2 )
           
            LCLICK ( $x, $y )
           
            WAIT ( 1 )
           
            WNDSTATE ( WNDFIND ("Mozilla Firefox"), 0 )
           
            WAITMS ( 100 )
           
         END_IF
         
         $check = 1  // если найдено выходим из цикла
         
      ELSE  // если не найдено
         
         GETSCREEN
         // поиск закладки
         COLORMODE ( 6, 100,50, $_xmax,$_ymax )
         IF_PICTURE_IN(100,50, $_xmax,$_ymax,"1.bmp",-1,90)
            LCLICK ( $_return1+10, $_return2+3 )
           
            WAIT ( 2 )
           
            $x = $_return1+10
            $y = $_return2+3
           
            LOGWRITE (" END")
           
         END_IF
      END_IF
   END_CYC
END_IF

5
Господа , есть открытая сеть WI-FI , но для корректной работы нужно подтверждение номера телефона каждые 15 мин.+- , сделал программу , но похоже пере мудрил  :

Code: (clickermann) [Select]
IF ( $f = 0 )
   $f = 1
   
   LOGWRITE ( " START" )
   EXECUTE ( "firefox.exe" )
   
   WAIT (9)
   
   HSET ( WNDFIND ( "Mozilla Firefox", 0 ), 1 )
   
   #logfile
   
   $t=INT(STRCONCAT("0",INIREAD("intersvyaz.ini","time",$td)))
   
END_IF

IF ( $t < $_time_t )
   
   $check = 0  //  0 не найдено, 1 найдено
   WHILE ( $check = 0 )   // ожидание окончания
     
      WNDSTATE ( WNDFIND ("Mozilla Firefox"), 1)
// ЕСЛИ ВДРУГ ИЗМЕНИЛ РАЗМЕР ...
      WNDPOS   ( WNDFIND ("Mozilla Firefox"), 10,10)
      WNDSIZE  ( WNDFIND ("Mozilla Firefox"), 500,480)
     
      WAITMS ( 100 )
     
      GETSCREEN
      // поиск окна для ввода номера
      IF_PICTURE_IN(50,100,$_xmax,$_ymax,"2.bmp",-1,90)
         LCLICK ( $_return1+100, $_return2+5 )
         
         WAITMS ( 100 )
         
         KEYSTRING ( "951xxxxxxx", 10 )
         
         WAITMS ( 100 )
         
         GETSCREEN
         // поиск окна "OK"
         IF_PICTURE_IN(100,200,$_xmax,$_ymax,"3.bmp",-1,90)
            LCLICK ( $_return1+10, $_return2+5 )
           
            WAITMS ( 100 )
           
            #include "Вывод даты.cms"
            SUB ( Вывод даты )
            END_SUB
            Вывод даты ( )
           
            $t = $_time_t + 897
            INIWRITE ( "intersvyaz.ini", "time", $t, $td )
// ИСПОЛЬЗУЮ ''Вывод текущей даты в лог.cms''   добавил
// в программу  :

//END_IF
//$td = $th,$tm,$ts," date",$dd,$dm,$dy
//LOGWRITE (" Перезапуск  date: ",$dd,".",$dm,".",$dy)   ...?
         
            WAIT ( 2 )
           
            LCLICK ( $x, $y ) // если не запустился то ... ???
           
            WAIT ( 1 )
           
            WNDSTATE ( WNDFIND ("Mozilla Firefox"), 0 )
           
            WAITMS ( 100 )
           
         END_IF
         
         $check = 1  // если найдено выходим из цикла
         
      ELSE  // если не найдено
         
         GETSCREEN
         // поиск закладки
         COLORMODE ( 6, 100,50, $_xmax,$_ymax )
         IF_PICTURE_IN(100,50, $_xmax,$_ymax,"1.bmp",-1,90)
            LCLICK ( $_return1+10, $_return2+3 )
           
            WAIT ( 2 )
           
            $x = $_return1+10
            $y = $_return2+3
           
            LOGWRITE (" END")
           
         END_IF
      END_IF
   END_CYC
END_IF

Как при запуске программы , стирать ini. и log ?
и ещё , бывает , что активация не проходит с первого раза ,
прописал :
            LCLICK ( $x, $y )
возвращается к окну для вставки номера , а что делать дальше не знаю , прописывать опять поиск окна для вставки номера и т д . , как то "не правильно " ... приходится пере запускать в ручную .

Pages: [1]