Python调用C的DLL和VC调用有什么区别?
2007-11-21 18:50
609 查看
之前我被这个问题搞晕了,一个C的DLL,VC写了测试程序调用完全没问题,但是Python调用就失败,百思不得其解,DLL开发者也说别人调用都是好的,肯定是你调用的问题,我查啊查的也没有结果,后来有一天,终于无意中发现,我的VC测试程序中,习惯性的第一行写着
CoInitialize(NULL) ;
会不会是这个问题,忽然想起那个DLL内部是用到ADO的!试验之后,发现果然问题解决了,原来是没有初始化COM!为什么其他调用程序都正常?我对DLL开发者解释道,这只是一个巧合罢了,那些调用程序刚好由MFC框架自动执行了COM初始化,而在Python里,是不是有人帮你自己执行的。
经过协商,DLL提供者在接口内执行了CoInitialize(NULL),问题解决。
CoInitialize(NULL) ;
会不会是这个问题,忽然想起那个DLL内部是用到ADO的!试验之后,发现果然问题解决了,原来是没有初始化COM!为什么其他调用程序都正常?我对DLL开发者解释道,这只是一个巧合罢了,那些调用程序刚好由MFC框架自动执行了COM初始化,而在Python里,是不是有人帮你自己执行的。
经过协商,DLL提供者在接口内执行了CoInitialize(NULL),问题解决。
相关文章推荐
- VC定义的三种类型DLL有什么区别
- dll动态调用和静态调用有什么区别
- VC定义的三种类型DLL有什么区别?
- VC定义的三种类型DLL有什么区别
- VC定义的三种类型DLL有什么区别?
- Python天天美味(29) - 调用VC++的动态链接库(DLL)
- Python 调用VC++的动态链接库(DLL)
- 调用css时,用link 和 @import url 有什么区别
- VC调用Python【转】
- VC调用C#写的DLL
- vc调用matlab的dll
- C,C++,VC++有什么区别
- VC中DLL的创建及调用方法
- __declspec(dllimport)和__declspec(dllexport)的区别,以及有关c/c++调用约定
- 在vb,vc中调用vb编写的DLL
- VC++ DLL的创建与动态调用模板
- 1. C,C++,VC++有什么区别
- Python中单引号和双引号括起来的短字符有什么区别
- VC++中的Dll调用及Dll的调试