Проблемы с $clipboard->get_text()

Если вы обнаружили какие либо ошибки, недочеты и неудобства или другие незачеты в программе напишите нам об этом на этом форуме - мы бум исправлять
Ответить
OlegGraf
Сообщения: 76
Зарегистрирован: 04 ноя 2011, 01:01

Проблемы с $clipboard->get_text()

Сообщение OlegGraf » 14 ноя 2013, 12:46

Есть такая программка ABBYY scrinshot reader http://rutracker.org/forum/viewtopic.php?t=3867851
C помощью нее можно распознавать текст в любом месте экрана
Процесс простой, кликаем по кнопке в программе, выделяем кусором область на экране, программа распознает данные в буфер обмена.
Потом в любой программе вставляем с помощью Ctrl+V
Так вот $clipboard->get_text() ничего не возвращает. То есть, он возвращает данные которые реально копировались с клавиатуры по Ctrl+С до этого, но распознанные нет. Хотя они есть в буфере.
Никаких мультибуферных приблуд у меня не стоит.
Windows 7
В чем может быть проблема?

OlegGraf
Сообщения: 76
Зарегистрирован: 04 ноя 2011, 01:01

Re: Проблемы с $clipboard->get_text()

Сообщение OlegGraf » 14 ноя 2013, 17:27

С буфером кажется получилось, была старая программа скриншот риадера
В новой версии по ссылке с буфером вроде нормально.
Но возникла другая проблема:

Код: Выделить всё

$go=$abbyy->get_child_by_class('Button');
if(!$go->mouse_click(15,15)) $go->mouse_click(15,15);
Кликает по кнопке через раз.
То есть при первом запуске кликнула - отработала и спряталась в трей.
Повторно запускаю скрипт
Скрипт достает из трея программу

Код: Выделить всё

if (!$abbyy->is_visible() || $abbyy->is_minimize()) {
            $abbyy->show(true);
            $abbyy->maximize();
            $abbyy->restore();
}
sleep(2);
Наводит курсор на кнопку и все, клика нет.
Проверьте работу функции ->mouse_click что-то не так.

И еще, как обратиться к браузеру жумана и выделить курсором область, делаю так:

Код: Выделить всё

        $tectwin=$window->get_by_text('[localhost:7010] Xweb Human')->get_child_by_class('#32770');
        $tectwin->mouse_left_down(6,44);
        sleep(1);
        $tectwin->mouse_move(800,400);
        sleep(1);
        $tectwin->mouse_left_up(800,400);
Но ничего не происходит
Пробовал классы AfxWnd100s AfxFrameOrView100s и тоже ничего

Ответить