You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在.NET 6中使用Pythonnet嵌入32位Python 3.6.5时遇异常求助

解决.NET 6.0嵌入32位Python 3.6.5的加载异常问题
  • 强制项目以32位运行
    打开项目属性的「生成」标签页,将「平台目标」改为x86,取消勾选「首选32位」(若存在)后重新编译。这是解决「%1不是有效的Win32应用程序」的核心——64位进程无法加载32位DLL,必须保证.NET进程和Python的位数完全匹配。

  • 确保python36.dll可被正确找到

    • 把32位Python安装目录(如C:\Python36-32)下的python36.dll复制到.NET项目的输出目录(如bin/Debug/net6.0);
    • 或者将32位Python的安装目录添加到系统Path环境变量中,注意不要同时保留64位Python的路径,避免冲突。
  • 验证Python环境配置
    确认安装的是纯32位Python 3.6.5:打开Python命令行,窗口标题会显示「(32-bit)」;同时确保依赖库都是32位版本,避免后续调用时出错。

  • 优化初始化代码(可选)
    如果DLL不在默认路径,可直接指定绝对路径,还可以提前设置Python环境变量:

    public PyScripts()
    {
        Environment.SetEnvironmentVariable("PYTHONHOME", @"C:\Python36-32");
        Environment.SetEnvironmentVariable("PYTHONPATH", @"C:\Python36-32\Lib;C:\Python36-32\Lib\site-packages");
        Runtime.PythonDLL = @"C:\Python36-32\python36.dll";
        PythonEngine.Initialize();
    }
    

内容的提问来源于stack exchange,提问作者Shaunl322

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 01:55:31