原文章地址:http://blog.youkuaiyun.com/caimouse/article/details/38395461
三者是python调用C写的动态链接库时,引用的ctypes库中的三个容易加载动态链接库的对象。通过访问这三个对象的属性来调用动态链接库中的函数。
CDLL主要用来加载C语言调用方式(CDECL)。
WINDLL主要用来加载win32调用方式(stdcall)。
oledll使用win32调用方式,且返回值是windows里返回的hresult值(双字节的值,说明函数执行结果,其最高bit位为0:执行成功;为1:执行失败。详细见:http://www.blogjava.net/JAVA-HE/archive/2010/01/04/308134.html)。
cdecl和stdcall异同:参数入栈顺序均是从右向左;不同的是,栈的清除工作,cdecl是由调用者负责清除;stdcall由被调用者清除。