我有一个用于时间管理的Tkinter程序。我决定让它在outlook中扫描我的收件箱以检查电子邮件中的标签,然后根据标签将其添加到我晚上要完成的任务列表中。
我编写的代码工作得很好,但是当我导入win32com.client时出现错误。我可以在IDLE中导入它,但是当我尝试使用.bat文件运行代码或双击.py文件时导入时出现问题。
我找到了几个有类似问题的人,但据我所知,它遇到了win32api模块或pywin32
的问题Traceback (most recent call last):
File "my_program_filename.py", line 1, in <module>
import win32com.client
File "c:/Python27/lib/site-packages/win32com/__init__.py", line 5, in <module>
import win32api, sys, os
ImportError: DLL load failed: The specified module could not be found
我真的很困惑。当我得到sys.path时,它与IDLE一样,从.py文件运行,但我的.py文件添加了“c:/ users / username / desktop / timer”除外。
我真的迷失了,不必弄乱系统路径,但我无法弄清楚我需要做些什么来解决这个问题。
我需要做些什么才能让pywin32正常工作,这样才能使用win32com.client?
非常感谢任何帮助。谢谢!
答案 0 :(得分:1)
尝试构建版本并查看它是否“正常”。如果是这样,你有一个探索的方向
答案 1 :(得分:0)
这是sys.path中没有正确路径的问题。如果你确保所有的pywin32文件夹都在sys.path中(如果你在IDLE中签入,它可以显示文件夹是否包括在内,即使它们不是?!?!?)。
您还必须确保从Python目录中运行代码,否则将无法导入win32api。我还发现,如果你在使用pywin32的函数中做任何事情,并且在调用它时意外拼错了函数,整个导入失败而不告诉你函数拼写错误。您还可以导航到/ Python27 / Lib / site-packages / win32com / client文件夹并运行makepy.py以确保安装了正确的对象库。
运行makepy.py时,选择要使用的COM对象,然后创建特定于您要使用的包。我不完全理解为什么会这样,但是一旦我这样做并从Python文件夹运行我的文件就可以了!关于如何正确使用here,有更深入的解释。
答案 2 :(得分:0)
我发现此链接是解决方案,而不是上面指出的win32com / client:win32com import error python 3.4
答案 3 :(得分:0)