Нам нужно прочитать текст из существующего приложения VB6. Поэтому мы используем методы FindWindow, GetWindowText и EnumChildWindows из kernel32 и можем перечислять и читать отображаемый текст в этом процессе.
Мы можем прочитать 90% текста с помощью нашего метода, но в целом существует определенный элемент управления (или блок), который мы не можем прочитать.
Мы не можем нацелить текст, который нам нужно прочитать, с помощью программ шпионского интерфейса, поэтому я предполагаю, что они должны отображать его непосредственно на экране с помощью GDI / GDI +. Они не могут использовать элемент управления или окно для отображения нужного нам текста.
Есть ли способ определить, как они воспроизводят текст, и, возможно, прочитать его?
Мы не хотим захватывать hDC окна и отображать его на растровом изображении и каким-то образом реверсировать CAPTCHA текст ... это может быть кошмаром.
РЕШЕНИЕ: Мы обнаружили, что для использования можно просто искать 2-3 фразы в этом поле по сравнению с фактическим распознаванием текста. Итак, мы собираемся отрендерить его в растровое изображение и сравнить его с 2-3 предварительно сохраненными растровыми изображениями, чтобы можно было просто сравнивать пиксель за пикселем.
Главный ответ привел нас к этому решению.