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

C#(.NET6)调用python.exe运行Python脚本无响应、闪退如何解决

问题修复方案

代码存在两处直接导致异常的配置错误:

  • 脚本路径拼写错误:start.Arguments配置的路径C\Users\user_name\PycharmProjects\Program_start\main.py中,C盘盘符后缺失冒号,属于非法路径,Python解释器读取不到目标脚本会直接退出,对应窗口闪退现象。
  • 解释器选型错误:配置的pythonw.exe是Python用于运行无交互后台脚本的版本,默认不创建控制台窗口,也不支持标准输入输出流交互,代码中的input()阻塞逻辑完全依赖控制台交互,用pythonw启动时会出现无响应或直接崩溃的情况。

修正后的run_cmd方法代码

private void run_cmd()
{
    ProcessStartInfo start = new ProcessStartInfo();
    // 替换为带控制台支持的python.exe,不要使用pythonw.exe
    start.FileName = @"C:\Users\user_name\AppData\Local\Programs\Python\Python39\python.exe";
    // 补全C盘盘符后的冒号,修正路径拼写错误
    start.Arguments = @"C:\Users\user_name\PycharmProjects\Program_start\main.py";
    start.UseShellExecute = false;
    start.CreateNoWindow = false; 
    start.RedirectStandardOutput = false;
    start.RedirectStandardError = false; 
    Process.Start(start);
}

替换后重新编译运行项目,点击按钮即可正常弹出Python控制台窗口,停在Is this working?的输入等待位置,不会再出现闪退或无响应问题。

补充说明:如果后续需要隐藏Python运行的控制台窗口,可以换回pythonw.exe,但该版本不支持input()这类控制台交互逻辑,仅适合运行无交互的后台脚本。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 08:15:43