我想运行一个Python脚本,该脚本使用一个库,该库在c++程序中仅适用于Python2.7。
我在发布模式下运行它,因为在VS 2015下我没有python27\u d.lib。
PyObject *pName, *pModule, *pDict, *pFunc, *pValue;
Py_Initialize();
std::string name = "C:/pathToProgamm/pythonHTTPS.py"
pName = PyString_fromString(name.c_strg());
pModule = Pyimport_Import(pName);
pDict = PyModule_GetDict(pModule);
这里我得到了python27错误。pdb未加载
我试图通过在调试下更改为“仅指定模块”(从“所有模块,除非排除”)来解决它->VS 2015中的符号
python27的符号加载。已跳过dll,因为未在“包含的模块”列表中指定它。我还尝试下载pdb文件并指向它,但这也不起作用。
我想做的是:
if (pName = PyString_FromString(name_i.c_str()))
{
if (pModule = PyImport_Import(pName))
{
if (pDict = PyModule_GetDict(pModule))
{
if (pFunc = PyDict_GetItemString(pDict, NULL))
{
std::cout << "success" << std::endl;
}
else
{
std::cout << "failed pFunc" << std::endl;
return;
}
}
else
{
std::cout << "failed pDict" << std::endl;
return;
}
}
else
{
std::cout << "failed pModule" << std::endl;
return;
}
}
else
{
std::cout << "failed pName" << std::endl;
return;
}
但结果是--gt;失败的pModule
因此,错误在pModule=Pyimport\u import(pName)中;
有谁能告诉我为什么失败,以及如何为我的python版本(2.7.14)运行调试