【发布时间】:2013-07-25 23:37:14
【问题描述】:
我的问题将使用 Python 中的示例,但这似乎是一个普遍的问题。
我一直在使用加载时动态链接,但由于各种原因(在下面的链接中推荐)我想动态加载 Python 库:
HINSTANCE hModPython = LoadLibrary(_T("Python27.dll"));
我可以从 DLL 加载 Py_Initialize 和其他函数,但这是一个肮脏的过程:
int (*pPy_Initialize)(void);
pPy_Initialize = (int (*)(void))GetProcAddress(hModPython, "Py_Initialize");
pPy_Initialize();
在this conversation 中说:
宏可以使使用这些指针对调用 Python 的 C API 中的例程的任何 C 代码透明。
我的问题实际上是当我要导入具有各种签名的各种函数时,如何执行作者建议的操作。最好使用 Python.h 中已经存在的签名(以某种方式包括该标头)。
【问题讨论】:
标签: python c++ c winapi loadlibrary