C# 调用 exe 输出日志

C# 调用 exe 输出日志 ProcessStartInfo

using System;
using System.Diagnostics;
using NLog;

class Program
{
    static void Main()
    {
        ProcessStartInfo startInfo = new ProcessStartInfo("your_exe_path.exe");
        startInfo.UseShellExecute = false;
        startInfo.RedirectStandardOutput = true;
        startInfo.RedirectStandardError = true;
        startInfo.CreateNoWindow = true;
 
        using (Process process = Process.Start(startInfo))
        {
            process.OutputDataReceived += (sender, e) =>
            {
                if (!string.IsNullOrWhiteSpace(e.Data))
                {
                    logger.Debug($"输出: {e.Data}");
                }
            };
 
            process.ErrorDataReceived += (sender, e) =>
            {
                if (!string.IsNullOrWhiteSpace(e.Data))
                {
                    logger.Error($"错误: {e.Data}");
                }
            };
 
            process.BeginOutputReadLine();
            process.BeginErrorReadLine();
 
            process.WaitForExit(); // 如果需要等待程序执行完成可以使用这个方法
        }
    }
}

posted @   VipSoft  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
历史上的今天:
2023-09-05 IIS 设置超时时间
2022-09-05 反射加缓存,解决不同的业务下调用不同的实现
2018-09-05 XML格式化工具
2017-09-05 获取枚举类型的 中文 描述 和值,根据值获取名称
点击右上角即可分享
微信分享提示