我試圖安裝PythonNET在Python 3.10和Python嵌入到.NET控制臺應用程式之前,先嘗試隨后它在WPF應用程式。
但是,PythonNET在GitHub 上下載本機代碼并通過pip install .. 安裝成功完成,Python.RunTime.dll這里C:\Users\Justin\AppData\Local\Programs\Python\Python310\Lib\site-packages\pythonnet\runtime\Python.RunTime.dll.
但是,當我嘗試在 C# 代碼中指向它時,它仍然會觸發BadPythonDllException錯誤。
C# 配置
using System;
using System.Collections.Generic; // For some implementation using List<> later on
using Python.Runtime;
namespace ConsoleApp_PythonNET_Test
{
class Program
{
static void Main(string[] args)
{
string EnvPath = @"C: \Users\Justin\AppData\Local\Programs\Python\Python310";
string pythonPath = @"C:\Users\Justin\AppData\Local\Programs\Python\Python310\Lib\site-packages\pythonnet";
Environment.SetEnvironmentVariable("PATH", EnvPath, EnvironmentVariableTarget.Process);
Environment.SetEnvironmentVariable("PYTHONHOME", EnvPath, EnvironmentVariableTarget.Process);
Environment.SetEnvironmentVariable("PYTHONPATH", pythonPath, EnvironmentVariableTarget.Process);
PythonEngine.PythonHome = Environment.GetEnvironmentVariable("PYTHONHOME", EnvironmentVariableTarget.Process);
PythonEngine.PythonPath = Environment.GetEnvironmentVariable("PYTHONPATH", EnvironmentVariableTarget.Process);
//Using (Py.GIL()) Method for some Python implementations
}
}
}
我可以檢查我遺漏了什么嗎?我只是仍然指向錯誤的目錄嗎?此外,WPF 應用程式中的嵌入程序是否相同,還是需要任何其他步驟?
提前致謝!干杯。
uj5u.com熱心網友回復:
從README存盤庫中的:
Runtime.PythonDLL...典型值是python38.dll(Windows)、libpython3.8.dylib(Mac)、libpython3.8.so(大多數其他 *nix)。
例如,您需要Runtime.PythonDLL將路徑設定為python39.dll.
嵌入到 C# 中時,無需安裝 pip 包。NuGet 就足夠了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/337961.html
