python加载dll函数失败_Python:使用ctypes访问DLL函数 – 按函数* name *访问失败

my

PythonClient(下面)想调用一个ringBell函数(使用ctypes从DLL加载).但是,尝试通过其名称访问ringBell会导致AttributeError.为什么?

RingBell.h包含

namespace MyNamespace

{

class MyClass

{

public:

static __declspec(dllexport) int ringBell ( void ) ;

} ;

}

RingBell.cpp包含

#include

#include "RingBell.h"

namespace MyNamespace

{

int __cdecl MyClass::ringBell ( void )

{

std::cout << "\a" ;

return 0 ;

}

}

myPythonClient.py包含

from ctypes import *

cdll.RingBell[1]() # this invocation works fine

cdll.RingBell.ringBell() # however, this invocation errors out

# AttributeError: function 'ringBell' not found

你可能感兴趣的:(python加载dll函数失败)