如何找到accessible_output lib使用的DLL的路径?

时间:2013-04-15 00:50:59

标签: python accessibility

我是一名盲人程序员,我正在尝试开发一个应用程序,以自动检索Winamp当前播放歌曲中的歌词,并以可访问的方式呈现给屏幕阅读器。 我正在使用accessible_output,一个使得活动屏幕阅读器与用户交谈的过程更容易的lib。 你可以在这里找到它: https://pypi.python.org/pypi/accessible_output/0.7.5#id3 它需要屏幕阅读器中的DLL才能工作。在我的测试中,NVDA屏幕阅读器,它需要NVDA32controller.dll。 从命令行运行时,它运行良好,但在使用py2exe创建.exe文件后,它找不到dll,因此屏幕阅读器不再说话了... 任何想法如何解决这个问题?我查看了lib的源代码,也许lib正在寻找的路径在从命令行执行时正常工作,但是当它是.exe文件时,它会改变......但我不知道为什么。也许我应该添加另一条路径,但它应该是什么路径?

1 个答案:

答案 0 :(得分:2)

这里的文章似乎描述了一个类似的问题和解决方案(包装有问题的DLL):http://eli.thegreenplace.net/2008/10/09/packaging-dlls-with-executable-made-by-py2exe/

此外,独立于上述文章,IIRC Windows在程序的安装目录中查找DLL。将屏幕阅读器的DLL复制到py2exe程序所在的目录可能会起作用。这个解决方案虽然部署得不是很好,但上面的解决方案虽然相似但可能会更好。