在python中加载DLL时出错,不是有效的Win32应用程序

发布于 2021-01-29 18:38:40

我正在尝试在python中加载DLL来调用函数。

import ctypes
from ctypes import *

dsusb = ctypes.WinDLL('c:\python27\dsusb.dll')

我在堆栈中收到以下错误。

C:\Python27>python test.py
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    dsusb = ctypes.WinDLL('c:\python27\dsusb.dll')
  File "C:\Python27\lib\ctypes\__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
WindowsError: [Error 193] %1 is not a valid Win32 application

我也用相同的代码尝试了cdll。

我查了一下错误,窗口说这是由于包含空格的路径引起的……我认为这并不是问题所在……

我是否错误地加载了该DLL或dll中可能存在错误?

关注者
0
被浏览
162
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    正如评论所暗示的,这可能是体系结构问题。

    如果您将32位DLL与64位Python配合使用,反之亦然,那么您可能会遇到错误。

    由于以前遇到过错误,因此我建议尝试使用32位Python加载DLL。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看