我使用cx_freeze冻结应用程序,它创建一个包含各种dll和程序exe文件的构建文件夹。当我尝试从命令提示符(Windows 10,64位)调用此exe时,只要当前命令提示符路径是构建文件夹,它就可以正常工作。
C:\mypath\build> file.exe
但是,如果我在命令提示符路径是另一个文件夹时尝试调用exe - 例如
c:\mypath> build\file.exe
我收到有关qwindows.dll未找到的错误
我尝试让我的软件识别exe路径并将其添加到系统路径(使用QApplication.addLibraryPath func和sys.path):
exe_dir = os.path.dirname(sys.executable)
QApplication.addLibraryPath(exe_dir)
sys.path.insert(0, exe_dir)
我确保所需文件位于构建文件夹的根目录中,因此exe_dir
肯定包含所需的文件夹,但是当.exe运行时,它似乎无法找到它们。
我怀疑这是一个简单的路径错误,并且想知道是否有人可以建议(可能是一行解决方案)告诉冻结的exe如何正确地找到它的dll文件。
由于