Я реализую интерфейс, который позволяет Python загружаться и использоваться из приложения Windows C ++. Он должен иметь возможность использовать любой Python, зарегистрированный в реестре Windows. Кажется, это работает нормально, например, с Python 3.8, загруженного с www.python.org. Однако с текущей Anaconda / Python 3.7 у меня проблемы. Похоже, он ожидает, что в PATH будет присутствовать много каталогов, и эти знания, похоже, скрыты в файле crypti c conda.bat. В особенности папка C:\ProgramData\Anaconda\Library\bin
кажется критической, без нее, например, numpy не будет загружаться.
Короче говоря, предполагая, что я начинаю со следующей информации из реестра:
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.7\InstallPath]
@="C:\\ProgramData\\Anaconda3"
как мне подготовить PATH и, возможно, другие вещи, чтобы загруженная Python DLL, от Anaconda или нет, была бы полностью функциональной? Для этой конкретной версии Anaconda я могу добавить их вручную, но это кажется не совсем устойчивым.
Я знаю, что одним из решений является установка флажка во время установки Anaconda, который поместит необходимые каталоги в системный PATH. Однако этот флажок не установлен по умолчанию и помечен как «не рекомендуемый», поэтому нет большой надежды на то, что наши конечные пользователи действительно его проверят.