正确的方法来构建python可执行文件(在wxWidgets中),以便可以从另一个wxWidgets应用程序中调用它?

cppcoder

我有两个wxWidgets Python应用程序-t1和t2。两个应用程序的源代码目录结构如下:
GUI / t1 / ...
GUI / t2 / ...

我在t1中有一个按钮可以启动t2。我正在尝试使用pyinstaller构建t1和t2,以便可以从t1正确启动t2。我在GUI / t1 / bin目录中构建了t1和t2。因此,存在的t1.exe和t2.exe如下:

GUI / t1 / bin / dist / t1 / t1.exe
GUI / t1 / bin / dist / t2 / t2.exe

我可以通过单击它们各自的可执行文件来成功启动t1和t2。但是,当我尝试从t1开始t2时,出现错误:

Traceback (most recent call last):  
  File "<string>", line 15, in <module>  
  File "c:\pyinstaller-2.0\PyInstaller\loader\iu.py", line 386, in importHook
    mod = _self_doimport(nm, ctx, fqname)  
  File "c:\pyinstaller-2.0\PyInstaller\loader\iu.py", line 480, in doimport
    exec co in mod.__dict__  
  File "bin\build\pyi.win32\jobmanager\out00-PYZ.pyz\wx", line 45, in <module>  
  File "c:\pyinstaller-2.0\PyInstaller\loader\iu.py", line 386, in importHook
    mod = _self_doimport(nm, ctx, fqname)  
  File "c:\pyinstaller-2.0\PyInstaller\loader\iu.py", line 480, in doimport
    exec co in mod.__dict__  
  File "bin\build\pyi.win32\jobmanager\out00-PYZ.pyz\wx._core", line 4, in <modu
le>  
  File "c:\pyinstaller-2.0\PyInstaller\loader\iu.py", line 409, in importHook
    raise ImportError("No module named %s" % fqname)  
ImportError: No module named _core_  

t2从t1启动,如下所示:

输出= subprocess.check_output(“ ../ t2 / t2.exe”,stderr = subprocess.STDOUT)

我不确定是什么问题。从t1启动t2的正确方法是什么,或者我需要更改构建中的任何内容吗?将t2.exe复制到dist / t1并作为subprocess.check_output(“ t2.exe”,...)启动也无济于事。

谢谢

cppcoder

该问题是由于pyinstaller 2.0版引起的。在将pyinstaller的版本更改为2.1并重新生成两个可执行文件后,即可解决该问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

Related 相关文章

热门标签

归档