致命的Python错误:无法获取初始化Python的随机数
环境windows 10,VSC 15
使用CreateProcessA winapi并传递lpenvironment变量来运行带有脚本的python。 当lpenvironment被传递为null时,它可以正常工作。 如果我设置环境变量PATH和PYTHONPATH=“paths”,并传递该LPSTR(env.c_Str()),则在运行时会抛出上述错误。 python版本是3.5.6
有什么帮助吗?在
更多细节。在
由于某种原因,CreateProcessA中的第7个参数失败python.exe如果为null,则运行成功,否则将打印“致命的Python错误:无法获取随机数初始化Python”。在
std::string Base=配置::getBasePath()
std::string environPython = Base;
environPython.append("\\Python;");
environPython.append(Base);
environPython.append("\\Python\\Scripts;");
environPython.append(Base);
environPython.append("\\Python\\include;");
environPython.append(Base);
environPython.append("\\Python\\Lib;");
environPython.append(Base);
environPython.append("\\Python\\libs;");
environPython.append(Base);
environPython.append("\\Python\\Lib\\site-packages;");
environPython.append(Base);
environPython.append("\\Python\\_ML;");
environPython.push_back('\0');
std::string environPath = Base;
environPath.append("\\Python;");
environPath.append(Base);
environPath.append("\\Python\\Lib;");
environPath.append(Base);
environPath.append("\\Python\\Scripts;");
environPath.append(Base);
environPath.append("\\Python\\libs;");
environPath.push_back('\0');
std::string cmd = Base;
cmd.append("\\Python\\python.exe");
std::string params = "\"";
params.append(cmd);
params.append("\" \"");
params.append(Base);
params.append("\\Python\\_ML\\mlprocessor_server.py\"");
std::map env={“PYTHONPATH”,环境python.data() }, {“路径”,环境路径.data()}
^{pr2}$结果总是正确的,python.exe未显示在任务管理器中,并给出致命的Python错误:无法获取初始化Python的随机数。在
如果lpEnvironment为空,python.exe显示在任务管理器中。在
目前没有回答
相关问题 更多 >
编程相关推荐