2012-11-21 1 views
2

데이터베이스와 상호 작용하는 작은 파이썬 스크립트를 작성했습니다. 스크립트 파일의 exe 파일을 만든 다음 스크립트 파일 자체를 보내는 대신 최종 사용자에게 보내려고했습니다. exe 파일을 만들기 위해 pytoexe를 사용하고 있습니다.컴파일 된 exe에서는 ImportError가 있지만 스크립트에는 포함되어 있지 않습니다.

이 내 setup.py 파일이 나는 EXE 파일을 만드는 동안 다음 명령 줄

python setup.py py2exe --bundle 2

를 사용하여 스크립트를 실행 지금

from distutils.core import setup 
import py2exe 
setup(
    console=["Test.py"], 
    zipfile = None, 
    data_files=[("", 
       ["config.xml"]), 
       ], 
    name='Test', 
    version='1.0.0', 
    url='', 
    license='', 
    author='test user', 
    author_email='', 
    description='', 
    #package_dir = {'': 'Lib'}, 
    py_modules =['pyodbc'] 
    #packages = ['pyodbc'] 
) 

같은 모습입니다, py2exe에 메시지를 표시합니다

The following modules appear to be missing ['ElementC14N', 'pyodbc']

그러나 exe가 생성됩니다. 이제이 exe를 실행할 때마다이 메시지가 나타납니다.

Traceback (most recent call last): File "Test.py", line 4, in ImportError: No module named pyodbc

스크립트를 실행하면 정상적으로 실행되는 스크립트가 실행됩니다. exe를 만들 때 exe는 작동하지 않고 나에게이 메시지를줍니다.

도움을 주시면 감사하겠습니다.

참고 : 내가 스크립트 파일에서 다음 수입이

  1. 수입 xml.etree.ElementTree ET 등
  2. 수입 pyodbc

다른 오류 [ "ElementC14N"] 그 py2exe가 생성되는 동안 exe인데, 나는 XML 파일 때문에 내가 설정을 읽고 있다고 생각한다. 그 문제를 해결하기위한 어떤 도움도 칭찬받을 만하다.

이 내가했고,이

options = {"py2exe":{"packages":"encodings", 
        "includes":["pyodbc", 
           "datetime", "decimal"], 
        "bundle_files":2, 
        "optimize":2},}, 
+0

은 내가 읽은 나를 위해 당신이 필요하다고 여러 가지 작업을 시작 것입니다

감사 – martineau

+0

그 링크를 나에게 전달해 주시겠습니까? – Gagan

+0

그냥 Google의 "py2exe" "pyodbc"'. – martineau

답변

1

여러분 모두 감사합니다

.... `options = { "py2exe": { "contains": "decimal, datetime"}}``setup` 인자는`pyodbc`가 작동하도록합니다.
+0

불행히도 이것은 나를 위해 일해 : ( 예를 들어 전체 setup.py 스크립트를 제공해 주시겠습니까? 내 setup.py는 다음과 같습니다. http://pastebin.com/b8M81Si5 http : // pastebin .COM/YLFixUzC TIA – texens

+0

안녕 texens ..입니다 http://pastebin.com/RvF9zS70 나를 위해 일하는 ... – Gagan

+0

했다 당신은 무엇을 누락 모듈 ElementC14N을 극복하기 위해 할 –