将Python嵌入到第三方应用程序回调的DLL文件中的问题

时间:2018-11-16 15:36:04

标签: c++ dll cpython pybind11

我正在尝试构建一个DLL(使用C ++),该文件将由第三方应用程序(TRNEXE.exe)使用。在DLL文件中,我想嵌入一些Python代码。因此,我使用pybind11和C / Python API。这对于Python的标准模块(例如sys,os,traceback等)可以正常工作。但是,当我尝试导入在site-packages文件夹中找到的Python模块时,例如NumPy,熊猫或其他类似物品: PyRun_SimpleString(“导入NumPy”)(使用C / Python API) pybind11 :: exec(“ import NumPy”) 或当我在由DLL文件调用的外部Python代码中导入NumPy时

该程序不再起作用。该程序似乎找不到软件包。

此外,我还尝试将Python代码嵌入C ++控制台应用程序(这意味着我从C ++源代码构建了一个可执行文件(不是DLL),该文件调用了一些Python代码),并且在所有Python模块中都可以正常工作。 / p>

请问有人对这种问题有经验并对我有任何建议吗?

PS我在PATH中设置了必要的值

0 个答案:

没有答案