标签: py2exe

py2exe windows服务问题

我已成功将我的python项目转换为服务.使用通常的安装和启动/停止选项时,一切正常.但是,我希望使用py2exe编译项目,这似乎正常工作,直到您将EXE作为服务安装并尝试运行它.

您收到以下错误消息:

  • 启动服务CherryPyService
  • 启动服务时出错:服务未及时响应启动或控制请求.

我的编译python文件(链接到主项目)如下:

  • 来自distutils.core导入设置
  • 导入py2exe

  • 设置(控制台= [ 'webserver.py'])

任何帮助将不胜感激.

python windows-services py2exe

6
推荐指数
1
解决办法
2811
查看次数

py2exe:由于DLL,编译的Python Windows应用程序将无法运行

我会承认我对Python很新,我真的不知道我在做什么.最近我使用Python 2.6.2和wxPython 2.8创建了一个非常小的Windows应用程序.而且效果很好; 我对它的正常工作表现非常满意.通常我的意思是当我直接通过Python解释器调用它时,如下所示:

> python myapp.py
Run Code Online (Sandbox Code Playgroud)

但是,我想更进一步,实际上将其编译成一个独立的可执行文件.所以我按照wxPython wiki中的这些指令使用了py2exe.起初它在命令行中给了我错误,说MSVCR90.dll丢失了.然后我将MSVCR90.dll复制到我的Python\DLLs文件夹中.这首先看起来像修复它,因为它成功地完成了它需要做的事情.它确实完成了一个快速警告,即程序依赖于某些DLL文件,我可能需要也可能不需要分发它们.

所以我导航到py2exe创建的dist文件夹并尝试运行我的可执行文件.但试图打开它只会弹出一个错误对话框,说:

This application failed to start because MSVCR90.dll was not found.
Re-installing the application may fix this problem.
Run Code Online (Sandbox Code Playgroud)

所以我继续将MSVCR90.dll再次复制到这个dist文件夹中.但那并没有成功.然后我将其复制到WINDOWS\system32目录中.那也没做到.我需要做些什么来使这个东西工作?

python wxpython py2exe

6
推荐指数
1
解决办法
6096
查看次数

如何在没有终端的Windows中运行py2exe程序?

有人可以向我解释如何运行我的py2exe程序,一个控制台程序,没有Windows上的终端?

我正在尝试制作一个重新调整窗口大小的程序,它应该从windows开始,所以我希望它隐藏但仍在运行...

python windows py2exe

6
推荐指数
1
解决办法
3407
查看次数

当bundle_files = 1时,py2exe + pywin32 MemoryLoadLibrary导入失败

我创建了一个使用pywin32的简单程序.我想将它部署为可执行文件,所以我py2exe它.我也不想要大量的文件,所以我设置bundle_files为1(意味着将所有内容捆绑在一起).但是,当我尝试运行它时,我得到:

Traceback (most recent call last):
  File "pshelper.py", line 4, in <module>
  File "zipextimporter.pyc", line 82, in load_module
  File "win32.pyc", line 8, in <module>
  File "zipextimporter.pyc", line 98, in load_module
ImportError: MemoryLoadLibrary failed loading win32ui.pyd
Run Code Online (Sandbox Code Playgroud)

在我的安装脚本中,我尝试过packages=["win32ui"]includes=["win32ui"]作为选项,但这没有帮助.如何让py2exe包含win32ui.pyd?

如果我不要求它捆绑文件我没有这个问题,所以我现在可以这样做,但我想知道如何让它正常工作.

python pywin32 py2exe

6
推荐指数
1
解决办法
3317
查看次数

使用py2exe创建exe后,raw_input导致EOFError

从脚本创建exe后py2exe raw_input()导致EOFError.

我怎么能避免这个?

 File "test.py", line 143, in main
    raw_input("\nPress ENTER to continue ")
EOFError: EOF when reading a line
Run Code Online (Sandbox Code Playgroud)

python py2exe eoferror

6
推荐指数
1
解决办法
5052
查看次数

用py2exe创建的可执行文件不能在windows xp 32bit上运行

我在64位Windows 7机器上用py2exe创建了一个可执行文件,并分发了该程序.

在Windows XP 32位机器上,程序拒绝运行,表现出以下行为:

一个弹出窗口说:program.exe不是一个有效的win32应用程序.

命令提示符窗口显示"访问被拒绝"

我检查了权限,用户具有完全控制权并完全拥有该文件及其父目录.所以这不是问题.

我可以成像的唯一可行的可能性是OS /架构不兼容.我该怎么解决这个问题?

我的setup.py文件用于生成可执行文件:

from distutils.core import setup
import py2exe

setup(console=['xerxes2excel.py'])
Run Code Online (Sandbox Code Playgroud)

我运行以下命令来生成exe:

python setup.py py2exe
Run Code Online (Sandbox Code Playgroud)

python architecture windows py2exe

6
推荐指数
1
解决办法
6703
查看次数

从嵌入式python的zip中加载pyd文件

我可以通过在扩展sys.path以包含zip文件之后从Python解释器调用"import some_module"从zip文件加载Python模块(.py,.pyc,.pyd)并且仅在我运行之后

import zipextimporter
zipextimporter.install()
Run Code Online (Sandbox Code Playgroud)

后者是.pyd模块所必需的.

我还可以从嵌入在C++中的Python加载Python .py和.pyc模块.但是,为了从嵌入式Python中加载.pyd模块,我添加了

PyRun_SimpleString("import zipextimporter");
Run Code Online (Sandbox Code Playgroud)

C++ exe超出此行而没有错误.但是下一个命令

PyRun_SimpleString("zipextimporter.install()");
Run Code Online (Sandbox Code Playgroud)

给我这个错误:

在此输入图像描述

嵌入Python时为什么zipextimporter.install()会崩溃?

我怎么解决这个问题?

它可能与编译C++代码的方式有关吗?我用g ++:

g++ embed-simple.cpp -IE:\Python27\include -LE:\Python27\libs -lpython27 -o embed-simple

我看到一个链接 如何链接msvcr90.dll与mingw gcc?

这能提供解决方案吗?如果是的话,我应该如何调整它,gcc - > g ++,因为我正在运行C++代码,而不是C.

我在WinXP上运行Python 2.7.2.

在干净安装Python 2.7.2后,我没有得到运行时错误,只是这样:

导入错误:没有名为....的模块

嵌入C++脚本的编译方式是否重要?我用过g ++.我也用英特尔编译器编译,但是给出了相同的运行时错误.也许我应该尝试MS Visual C++.

或者使用ctypes导入pyd?

python zip py2exe cython visual-c++

6
推荐指数
2
解决办法
3122
查看次数

py2exe找不到所有依赖项

我试图从python代码创建一个exe.我可以从命令行运行代码,如下所示:

python myScript.py
Run Code Online (Sandbox Code Playgroud)

我从这里安装了py2exe:http://sourceforge.net/projects/py2exe/files/py2exe/0.6.9/

并且,有一个如下所示的setup.py:

from distutils.core import setup
import py2exe

setup(console=['myScript.py'])
Run Code Online (Sandbox Code Playgroud)

而且,我像这样运行setup.py:

python setup.py py2exe
Run Code Online (Sandbox Code Playgroud)

我在输出中得到以下内容:

The following modules appear to be missing
['Carbon', 'Carbon.Files', '__pypy__', '_scproxy', 'http_parser.http', 'http_parser.reader', 'jinja2._debugsupport', 'jinja2._markupsafe._speedups',
'jinja2.debugrenderer', 'markupsafe', 'pretty', 'socketpool', 'socketpool.util']
Run Code Online (Sandbox Code Playgroud)

而且,果然,如果我尝试运行exe,我会收到错误:

$ ./myScript.exe
Traceback (most recent call last):
  File "restkit\__init__.pyc", line 9, in <module>
  File "restkit\conn.pyc", line 14, in <module>
ImportError: No module named socketpool
Traceback (most recent call last):
  File "myScript.py", line 12, in <module>
ImportError: cannot import name …
Run Code Online (Sandbox Code Playgroud)

python py2exe cx-freeze

6
推荐指数
1
解决办法
8601
查看次数

Py2Exe生成日志文件

我的问题是py2exe我运行时生成一个日志文件.它不会生成,因为我在运行程序时出错.在日志文件中打印出标准控制台!

我该怎么做才能生成没有日志文件?

这里是我的py2exe设置代码:

from distutils.core import setup
import py2exe, sys, os
sys.argv.append('py2exe')
setup(
    options = {'py2exe': {'bundle_files': 1, 'compressed': True}},
    windows = [{'script': "run.py"}],
    zipfile = None
)
Run Code Online (Sandbox Code Playgroud)

python logging distutils py2exe

6
推荐指数
1
解决办法
2574
查看次数

双击后,.exe在启动后立即关闭

exepy2exe模块创建了一个文件.奇怪的是,当我运行exe命令行时它必须工作,但是当我双击exe它时,它会打开一个控制台(就像它必须这样做)并且控制台立即关闭.

我写了一个logging方法来找出问题所在try-except,并且包含了不捕获任何异常的方法.

这是我的一段代码:

if __name__ == '__main__':
    try:
        mh = moto()
        db = database() # you can find __init__ of database() below
        log('ok') # I CAN'T FIND THIS LINE IN THE LOG FILE SO THE PROBLEM IS PROBABLY INSIDE __INIT__ OD database()
    except Exception as e: 
        log(str(e))
        log(str(traceback.format_exc))

    for url in [__CATs__,__hyphens__]:
        log(' for url')
Run Code Online (Sandbox Code Playgroud)

init database():

class database():

    def __init__(self):
            self.conn = sqlite3.connect('db.db') # Database is created …
Run Code Online (Sandbox Code Playgroud)

python cmd exe py2exe

6
推荐指数
1
解决办法
1813
查看次数