从C#调用时,远程检查已登录用户的批处理文件会生成空文本文件

时间:2019-07-18 20:28:20

标签: c# batch-file

我有一个带有按钮的简单C#Windows窗体,该窗体执行批处理文件以远程检查VM中当前登录的用户,然后将结果转储到文本文件中。

问题在于,每当批处理文件执行时,它都会创建一个空文本文件。一般来说,如果我通过文件资源管理器运行批处理文件,则运行查询和转储文本文件(具有适当的内容)大约需要3秒钟,但是,通过C#,它会在不到一秒钟的时间内生成空文本文件。

C#:

        private void button1_Click(object sender, EventArgs e)
    {
        String bat = @"BATCHFILE.bat";

        try
        {
            Process proc = new Process();
            proc.StartInfo.FileName = bat;
            proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
            proc.Start();
            proc.WaitForExit();
            proc.Close();
        }
        catch (Exception ex) { Console.WriteLine(ex.StackTrace.ToString()); }
    }

批处理文件:

query user /server:server_name > SAVEPATH.txt 
exit

为了使它起作用,我不包括什么?


编辑:编辑批处理文件以不执行网络查询,而仅将“ hello world”回显到文本文件即可。所以绝对是w.r.t.网络活动。

0 个答案:

没有答案
相关问题