Форум: "Прочее";
Текущий архив: 2011.08.07;
Скачать: [xml.tar.bz2];
ВнизABBYY тормозит мою программу. Не пойму, каким образом... Найти похожие ветки
← →
И. Павел © (2011-04-14 08:12) [0]Здравствуйте.
У меня есть программа на Delphi. В ней есть EhGrid (аналог TDBGrid в EhLib). Когда пользователь запускает программу ищелкает по этой таблице мышью, чтобы сменить активную строчку, программа зависает, и только через некоторое время вызывается AfterScroll для соответствующего ADODataSet. Оказалось, что виновником является Abbyy. Зависания происходят, когда в Abbyy Lingvo включена функция перевода слов под курсором. Причем он распознает слова, содержащиеся в TDbEhGrid, хоть они там просто на канве рисуются (видимо, считывает канву и распознает, если вообще свой код не встраивает). Ловил WM_GETTEXT - кажется, не приходит (да и не было бы от него толку, т.к. в Grid текст просто рисуется на канве).
Подскажите, пожалуйста, что Abbyy Lingvo делает с программами, и как это делает? Может быть, кто-то с этим уже сталкивался?
PS: Версия Abby - x3. В их техподдерхку уже написал, но они пока не чешутся, и, учитывая то, что их программа способна выцарапать и распознать текст буквально отовсюду, сомневаюсь, что без мелкого хакерства обошлось...
Заранее спасибо.
← →
KSergey © (2011-04-14 08:46) [1]> Причем он распознает слова, содержащиеся в TDbEhGrid, хоть они там просто на канве рисуются (видимо, считывает канву и распознает,
> если вообще свой код не встраивает).
Не верю в распознавание.
А остальные программы - не тормозят?
Где ловили WM_GETTEXT? у самого грида? скорее его надо ловить у встраиваемого Edit на месте ячейки (инфа в гриде редактируется?)
← →
И. Павел © (2011-04-14 09:06) [2]> А остальные программы - не тормозят?
Спасибо за идею. Сейчас проверил в другой своей программе - на одной таблице тормозит, а на другой - нет. Обк таблицы - EhGrid. Буду искать отличия.
А вот сторонние программы серьезно не тормозят (есть небольшие подвисания, и довольно длинное подвисание в момент открытия окна перевода).
> инфа в гриде редактируется?)
Нет. Грид не редактируемый (у пользователя нет такой возможности). Например, подвожу курсор к ячейке грида, которая даже не выбрана, и Abbyy мне показывает ее текст и перевод.
Кстати, он даже текст из картинок/схем мождет извлекать - очень удобно при чтении английской документации, но видимо есть и минусы.
http://s003.radikal.ru/i201/1104/a6/e4f447d1f470.jpg
← →
OW © (2011-04-14 09:25) [3]у Abbyy настройки должны быть, имхо
← →
И. Павел © (2011-04-14 09:30) [4]> [3] OW © (14.04.11 09:25)
> у Abbyy настройки должны быть, имхо
В настройках можно отключить автоматический перевод. Но этой программой пользуются очень многие. В т.ч. и переводчики (у них и обнаружилась эта ошибка). А им функция автоматического перевода нужна.
← →
sniknik © (2011-04-14 09:34) [5]> т.к. в Grid текст просто рисуется на канве
он что DrawGrid? сам рисуешь? потому, что ни один из мне известных так не делает.
> Где ловили WM_GETTEXT?
а вот эта функция "в нутрях" через него работает?
http://www.delphimaster.net/view/2-1277667083/all
проверил бы...
← →
И. Павел © (2011-04-14 10:28) [6]> Где ловили WM_GETTEXT?
И на уровне окна таблицы, у на уровне всего приложения.
> а вот эта функция "в нутрях" через него работает?
> http://www.delphimaster.net/view/2-1277667083/all
> проверил бы...
Ни accName ни accValue не посылают WM_GetText. И моя программа из за них не подтормаживает.
Подскажите, пожвлуйста, можно ли как-нибудь запретить Windows отдавать лбъект EhGrid чужим приложениям? Проще говоря сделать так, чтобы любой вызов Succeeded(AccessibleObjectFromPoint(P, A, V)) для окон моей программы возвращал false?
← →
Inovet © (2011-04-15 00:03) [7]> [4] И. Павел © (14.04.11 09:30)
> А им функция автоматического перевода нужна.
Можно не по наведению мыши настроить, а в сочетании с Ctrl. А то окно перевода везде вылазит.
← →
И. Павел © (2011-04-15 08:08) [8]> [7] Inovet © (15.04.11 00:03)
Я тоже у себя через ctrl делаю, когда что-то английское читаю.
Но у наших переводчиков почему-то настроен автоматический перевод всего. Видимо, потому что они переводами по 8 ч. в день занимаются, а может быть действительно просто не знают. как отключить.
Но это вариант, спасибо. Если не удастся защитить программу он "штурма" со стороны Abbyy Lingvo, просто попрошу администраторов при установке переводчика в настройках включать перевод по нажатию ctrl.
← →
Inovet © (2011-04-15 10:27) [9]Кстати, для информации, может чем поможет. В ИЕ9 всплывающий перевод перестал работать. Так были и в 11-й версии на ИЕ8 на Вин7, тогда в техподдержке ничего умнее не сказали, как UAC отключить, типа ответили формально правильно. В Lomgvo x3 это как-то учли, теперь вот с ИЕ9 снова повторяется.
← →
И. Павел © (2011-04-15 11:36) [10]> [9] Inovet © (15.04.11 10:27)
Спасибо.
В техподдержке сказали, что передали мое письмо разработчикам. Посмотрю, что они скажут. Надеюсь, что у них найдется какой-нибудь способ для исключения моей программы из обработки Lingvo, т.к., скорее всего, мой случай не первый.
← →
Inovet © (2011-04-15 12:08) [11]> [9] Inovet © (15.04.11 10:27)
> Так были и в 11-й версии на ИЕ8 на Вин7
Не в 12-й, нынешняя x3 это же 13-я. Собственно в 12-й и появилась эта возможность перевода на лету.
← →
dmk © (2011-04-15 14:41) [12]>скорее всего, мой случай не первый
Угу. У меня Абби тоже тормозит все что только можно.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2011.08.07;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.003 c