2013-04-15 2 views
5

Я слепой программист, и я пытаюсь разработать приложение, чтобы автоматически извлекать тексты из текущей исполняемой песни на Winamp и представлять ее доступным способом для чтения с экрана. Я использую доступный_output, lib, который упрощает процесс чтения активного экрана с пользователем. Вы можете найти его здесь: https://pypi.python.org/pypi/accessible_output/0.7.5#id3 Для работы требуется библиотека DLL. В моих тестах, читателе NVDA, ему нужен NVDA32controller.dll. При запуске из командной строки он работает хорошо, но после создания файла .exe с py2exe он не находит dll, поэтому программа чтения с экрана больше не говорит ... Любые идеи, как решить эту проблему? Я посмотрел исходный код lib и, возможно, путь, который ищет lib, просто работает, когда он выполняется из командной строки, но когда он является .exe-файлом, он изменяется ... но я не знаю Зачем. Может быть, я должен добавить еще один путь, но какой путь он должен быть?Как найти путь для библиотек DLL, используемых доступной библиотекой lib?

ответ

2

В статье здесь, кажется, описывает подобную проблему и решение (упаковки DLL в вопросе): http://eli.thegreenplace.net/2008/10/09/packaging-dlls-with-executable-made-by-py2exe/

Кроме того, независимо от указанной выше статьи, IIRC Windows, выглядит внутри каталог установки по Програмам для библиотек DLL. Копирование DLL для программы чтения с экрана в каталог, в котором находится программа py2exe, может работать. Это решение не развертывается слишком хорошо, хотя и выше, хотя подобное может быть и лучше.

+0

спасибо. Этот урок помог мне. Кроме того, я нашел аргумент функции настройки, называемой data_files, где я могу добавить кортежи, информирующие создаваемые папки, и файлы, которые нужно скопировать –

Смежные вопросы