• C#中调用命令行和使用.cs文件创建dll包


    调用命令行参考文档1

    C#调用cmd

    string str = Console.ReadLine();
    
    System.Diagnostics.Process p = new System.Diagnostics.Process();
    p.StartInfo.FileName = "cmd.exe";
    p.StartInfo.UseShellExecute = false;    //是否使用操作系统shell启动
    p.StartInfo.RedirectStandardInput = true;//接受来自调用程序的输入信息
    p.StartInfo.RedirectStandardOutput = true;//由调用程序获取输出信息
    p.StartInfo.RedirectStandardError = true;//重定向标准错误输出
    p.StartInfo.CreateNoWindow = true;//不显示程序窗口
    p.Start();//启动程序
    
    //向cmd窗口发送输入信息
    p.StandardInput.WriteLine(str + "&exit");
    
    p.StandardInput.AutoFlush = true;
    //p.StandardInput.WriteLine("exit");
    //向标准输入写入要执行的命令。这里使用&是批处理命令的符号,表示前面一个命令不管是否执行成功都执行后面(exit)命令,如果不执行exit命令,后面调用ReadToEnd()方法会假死
    //同类的符号还有&&和||前者表示必须前一个命令执行成功才会执行后面的命令,后者表示必须前一个命令执行失败才会执行后面的命令
    
    //获取cmd窗口的输出信息
    string output = p.StandardOutput.ReadToEnd();
    //StreamReader reader = p.StandardOutput;
    //string line=reader.ReadLine();
    //while (!reader.EndOfStream)
    //{
    //    str += line + "  ";
    //    line = reader.ReadLine();
    //}
    
    
    p.WaitForExit();//等待程序执行完退出进程
    p.Close();
    
    Console.WriteLine(output);

    生成DLL参考文档

    找到vs自带的开发人员shell,输入

    csc /target:library /out:G:/{你的输出dll文件名称和所在路径}.dll G:/{你的输出cs文件名称和所在路径}.cs

    核心是这句话

  • 相关阅读:
    小米6刷机开启root权限
    C标准库堆内存函数
    UE4打印到HUD的Stat命令
    Blueprint Stats插件
    PC与Mobile硬件架构对比
    atomic原子编程中的Memory Order
    Windows10下开启D3D11的Debug Layer
    【数据结构】树存储结构
    【数据结构】哈希表
    【算法】查找算法
  • 原文地址:https://www.cnblogs.com/SevenWang/p/16350508.html
Copyright © 2020-2023  润新知