在c#应用程序中隐藏sqlcmd

本文关键字:隐藏 sqlcmd 应用程序 | 更新日期: 2023-09-27 18:26:21

我是c#的新手,我正在将旧的批处理文件脚本重写到它中,但我遇到了这个问题:

基本上我想隐藏sqlcmd窗口,所以我尝试了这个

        Process bkp = new Process();
        bkp.StartInfo.CreateNoWindow = true;
        bkp.StartInfo.UseShellExecute = false;
        bkp.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
        bkp = Process.Start("C:''Program Files (x86)''Microsoft SQL Server''90''Tools''Binn''SQLCMD.EXE", "-S This-PC''MyApp -U user -P pass -Q '"query'"");

但这不起作用,黑色窗口仍然存在。真的有办法隐藏它吗?

感谢

在c#应用程序中隐藏sqlcmd

您准备了bkp对象,但它根本没有使用。它在调用Process.Start方法时被覆盖。

它应该是这样的:

  Process bkp = new Process();
  bkp.StartInfo.CreateNoWindow = true;
  bkp.StartInfo.UseShellExecute = false;
  bkp.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
  bkp.StartInfo.FileName = "C:''Program Files (x86)''Microsoft SQL Server''90''Tools''Binn''SQLCMD.EXE";
  bkp.StartInfo.Arguments = "-S This-PC''MyApp -U user -P pass -Q '"query'"";
  bkp.Start();