2017-06-26 6 views
0

Python 3.5.3と最新のcx_Freezeが動作しています。 exeをビルドすると、すべて正常に動作します。 - 私が最初に試したものですPython 3.5.3でcx_Freezeでエラーが発生する

# If this fails your Python may no be configured for Tk 
ImportError: DLL load failed: The specified module could not be found. 

私は解決策を踏襲ではなく、明示的にパスを指定するよりも、ファイル方式を使用してhere(第2の答えを見つけました:私は、exeファイルを実行したときしかし、私が言って対話メッセージを取得します同じ結果で)。また、解決策を試したhereが、私はまだexeを実行すると、エラーを取得しています。

import os 
import sys 
from cx_Freeze import setup, Executable 


PYTHON_INSTALL_DIR = os.path.dirname(os.path.dirname(os.__file__)) 
os.environ['TCL_LIBRARY'] = os.path.join(PYTHON_INSTALL_DIR, 'tcl', 'tcl8.6') 
os.environ['TK_LIBRARY'] = os.path.join(PYTHON_INSTALL_DIR, 'tcl', 'tk8.6') 

options = { 
    'build_exe': { 
     'include_files':[ 
      os.path.join(PYTHON_INSTALL_DIR, 'DLLs', 'tk86t.dll'), 
      os.path.join(PYTHON_INSTALL_DIR, 'DLLs', 'tcl86t.dll'), 
     ], 
    }, 
} 

setup(
    name="Drawings Converter", 
    version="1.0", 
    description="Converts PDF files named by part number to PDF files named by reference number", 
    executables=[Executable("DrawingsConverter.py", base="Win32GUI")]) 

誰もが私が行方不明かもしれないもののアイデアを持っている:

は、ここに私のsetup.pyファイルですか?私がcx-Freezeを使用したのはこれが初めてのことですが、私もPythonを初めて使っています。今後これを避けることを学ぶのに役立つ問題に関する詳細情報は、非常に高く評価されます。前もって感謝します!

EDIT:.dllファイルをビルドディレクトリにコピーして問題を解決しました。しかし、なぜ誰かがcx_Freezeがこれをやっていない、または見つけられなかった理由について、私に洞察を与えることができれば、私はまだそれを感謝するでしょう。

答えて

0

.dllファイルを手動でビルドディレクトリにコピーして解決します。