前言
最近在用snap7做一个协议转换的小工具,在pycharm运行的都没问题,打包成exe文件也没报错,但是打开exe文件的时候会报错。
报错如下:
Traceback (most recent call last):
File “py-s7-modbus.py”, line 36, in
File “snap7\client.pyc”, line 34, in init
File “snap7\common.pyc”, line 54, in load_library
File “snap7\common.pyc”, line 47, in init
File “ctypes_init_.pyc”, line 440, in LoadLibrary
File “ctypes_init_.pyc”, line 362, in init
WindowsError: [Error 193] %1 is not a valid Win32 application
一直找了各种解决方式,最后在参考https://www.pythonheidong.com/blog/article/375208/090cce43db640d753ed9/的基础上,更换了打包需要的snap.dll文件。
我本机有三个不同大小的snap.dll文件,全部试了一遍,其中一个在打包完成后可以用,应该是32位的dll文件。
另外我在官网重新下载了比较全的snap7文件夹。
用其中的32位dll文件代替也解决了这个问题。
下载地址:https://sourceforge.net/projects/snap7/files/1.4.2/
总结
`
参考了 https://www.pythonheidong.com/blog/article/375208/090cce43db640d753ed9/
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)