构建 exe 时存在“pyautogui”的“tkinter”模块错误

问题描述

我有一个 My_screenshot_file.py 文件,它利用 tkinter 截取窗口的屏幕截图。它使用名为 import pyautogui 的模块。它作为 python 脚本文件运行没有错误

不过,我想申请一下。我的 setup.py 代码如下:

import cx_Freeze
import sys
import os
from tkinter import *      
from cx_Freeze import setup,Executable  
import os.path



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,'tk8.6')


base = None
if sys.platform == 'win32':
    base = 'win32gui'

executables = [Executable('My_screenshot_file.py',base=base)]


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


setup(name = 'Application',version = '1',description = 'Sample cx_Freeze Tkinter script',options = options,executables = executables
      )

当我运行 My_screenshot_file.exe 文件时,我收到一条错误消息

No module named tkinter 

我可以弄清楚,如果我注释掉 import pyautogui 文件中的 My_screenshot_file.py,那么错误 No module named tkinter 就会消失。但显然在那种情况下,我截取屏幕截图的目的并没有得到满足。

有人可以告诉我如何解决 tkinterpyautogui间的冲突问题吗?

我需要对我的 setup.py 文件进行任何更改吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)