У меня есть программа, которая извлекает текст из PDF-файлов. Он запускается как запланированная задача на Windows Server 2008.
Библиотека, которую я использую - это SDK ByteScout PDF Extractor, основанный на Tesseract под обложками.
С момента запуска в ноябре прошлого года, программа успешно извлекла текст из более чем 50 000 PDF-файлов из разных источников.
Недавно он завис на одном PDF, а затем на втором, из того же источника в том же визуальном формате.
Я могу воссоздать проблему, используя простую 12-строчную программу. Я отправил эту программу поставщику, но работа этой программы в их среде работает (она не зависает).
Итак, я провел некоторые эксперименты, и вот тут-то и странно.
Программа работает на моем ПК (Windows 7), если я подключаюсь к нему, но не в случае прямого входа в систему. Это поведение повторяется на других компьютерах с Windows 7 в нашей среде.
Он работает на Server 2008, если у меня RDPed, но не как запланированная задача.
Работает в Windows 10, независимо от того, подключен ли я по протоколу RDP или вошел в систему напрямую.
Если я смотрю программу в Process Monitor, когда она застряла, я вижу, что она снова и снова открывает и читает C: \ Windows \ Fonts \ times.ttf.
Если бы это работало только с использованием RDP, я бы подумал, что причина была в неуместном использовании графического ускорения или чего-то подобного, но учитывая, что оно не работает как запланированное задание, где ни одно не будет присутствовать. Я думаю, что это тупик.
У кого-нибудь есть предложения, где искать дальше?