2

SQL Server Management studio をプログラムで開こうとしています。Process を使用して SQL Server を開き、Start() メソッドを使用してプロセスを開きました。

                    using System.Diagnostics;
                    Process Sql = new Process();
                    string strfile1="example1.sql";
                    string strfile2="example2.sql";
                    Sql.StartInfo.FileName = "Ssms.exe";//sql server process
                    Sql.StartInfo.Arguments = strfile1;
                    Sql.Start();
                    Sql.StartInfo.Arguments = strfile2;
                    Sql.Start();

このコードは SQL サーバーの 2 つのインスタンスを開きますが、プロセスが既に実行されているかどうかを確認し、既存のプロセスを再利用して、同じプロセスで example2.sql を開きたいと考えています。

4

2 に答える 2

1

何をすべきかを OS に決定させたらどうなるでしょうか。

Process.Start("example1.sql");
Process.Start("example2.sql");
于 2013-03-21T08:13:52.567 に答える
1

次のように、プロセスが名前で実行されているかどうかを確認できます (ssms プロセスの名前を調べる必要があります)。

Process[] procName= Process.GetProcessesByName("INSERT NAME HERE");
if (procName.Length >= 0)
{
  //you are already running
}

しかし、ssms の既存のインスタンスを変更することはできないと思います。

于 2013-03-21T08:04:51.913 に答える