原文
C#隐式运行CMD命令(隐藏命令窗口)
本文实现了C#隐式运行CMD命令的功能。下图是实例程序的主画面。在命令文本框输入DOS命令,点击“Run”按钮,在下面的文本框中输出运行结果。
下面是程序的完整代码。本程序没有使用p.StandardOutput.ReadtoEnd()和p.StandardOutput.ReadLine()方法来获得输出,因为这些方法执行后画面容易卡死。而是通过调用异步方法BeginOutputReadLine来获取输出,并在事件p.OutputDataReceived的事件处理方法中来处理结果。
using System;
using System.Diagnostics;
using System.IO;
using System.Windows.Forms;
namespace RunDosCommandForm
publicpartialclassForm1 : Form
publicForm1()
InitializeComponent();
private void button1_Click(object sender, EventArgse)
ExcuteDosCommand(textBox1.Text);
private void ExcuteDosCommand(string cmd)
Process p = newProcess();
p.StartInfo.FileName = "cmd";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.OutputDataReceived += new DataReceivedEventHandler(sortProcess_OutputDataReceived);
p.Start();
StreamWriter cmdWriter = p.StandardInput;
p.BeginOutputReadLine();
if (!String.IsNullOrEmpty(cmd))
cmdWriter.WriteLine(cmd);
cmdWriter.Close();
p.WaitForExit();
p.Close();
catch(Exception ex)
MessageBox.Show("执行命令失败,请检查输入的命令是否正确!");
private void sortProcess_OutputDataReceived(object sender,DataReceivedEventArgs e)
if(!String.IsNullOrEmpty(e.Data))
this.BeginInvoke(newAction(() => { this.listBox1.Items.Add(e.Data);}));
我们还可以将需要运行的CMD命令保存为BAT文件,再使用Process类来执行。
Process p = new Process();//设定调用的程序名,不是系统目录的需要完整路径
p.StartInfo.FileName = "cmd.bat";//传入执行参数
p.StartInfo.Arguments = "";
p.StartInfo.UseShellExecute = false;//是否重定向标准输入
p.StartInfo.RedirectStandardInput = false;//是否重定向标准转出
p.StartInfo.RedirectStandardOutput = false;//是否重定向错误
p.StartInfo.RedirectStandardError = false;//执行时是不是显示窗口
p.StartInfo.CreateNoWindow = true;//启动
p.Start();
p.WaitForExit();
p.Close();
C#调用执行命令行窗口cmd,及需要交互执行的处理
C#执行外部程序用到的是Process进程类,打开一个进程,可以指定进程的启动信息StartInfo(启动的程序名、输入输出是否重定向、是否显示UI界面、一些必要参数等)...
Rstudio常用快捷键以及窗口操作有用技巧
以下快捷键为平时小编用的比较多的,以前总是记不住这些枯燥的快捷键,只好找小本本记下,想用的时候翻翻本子,用着用着就印在脑子里了。现在整理起来写篇推送还是非常有意义的,这次配上小视频(gif),以便大家记忆。星数(⭐)表示常用指数,满星3颗,星越多越需要记下使用噢!
【Windows 逆向】OD 调试器工具 ( 显示模块窗口 | 显示记录窗口 | 显示内存窗口 | 显示线程 | 显示句柄 | 显示 CPU | 多窗口界面 )(二)
【Windows 逆向】OD 调试器工具 ( 显示模块窗口 | 显示记录窗口 | 显示内存窗口 | 显示线程 | 显示句柄 | 显示 CPU | 多窗口界面 )(二)
【Windows 逆向】OD 调试器工具 ( 显示模块窗口 | 显示记录窗口 | 显示内存窗口 | 显示线程 | 显示句柄 | 显示 CPU | 多窗口界面 )(一)
【Windows 逆向】OD 调试器工具 ( 显示模块窗口 | 显示记录窗口 | 显示内存窗口 | 显示线程 | 显示句柄 | 显示 CPU | 多窗口界面 )(一)
如何找到后台运行的隐藏程序
并非所有程序都可见地显示在您计算机的任务栏上。其他程序有意隐藏,因为它们充当有效的后台服务或进程,不需要通过任务栏进行持续访问。一些程序即使在关闭它们之后仍保持打开 这是一种常见的做法,尤其是对等实用程序,这些实用程序要求其他用户从计算机下载共享文件。