c# - 绑定(bind)到现有进程

标签 c# .net visual-studio-2010

我正在尝试打开 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 Server 实例,但我想检查该进程是否已在运行并重用现有进程并在同一进程中打开 example2.sql。如何做到这一点?

最佳答案

您可以通过名称检查进程是否正在运行(您需要找出 ssms 进程的名称),如下所示:

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

但我认为您无法修改 ssms 的现有实例。

关于c# - 绑定(bind)到现有进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15542126/

相关文章:

c# - 我可以重用内置 IIS 身份验证但提供我自己的凭据检查吗?

c# - 卸载后程序仍列在控制面板中

c# - 如何使用 jQuery 或 JavaScript 或服务器端代码获取客户端(用户)机器名称(计算机名称)。 (审查可能的方式)

visual-studio-2010 - Visual Studio/mstest如何识别测试项目?

c# - 快速正则表达式在我的代码中引入 C# 6 的名称 of(x) 而不是字符串文字

.net - 使用网络摄像头在WP7仿真器中模拟手机摄像头

c# - 在 .net 中以编程方式突出显示 PDF - 是否有任何 API 和库来生成偏移文件或是否有更好的方法?

c# - .Net zlib 与 .Net 4.5 一起膨胀

c# - LINQ left join ordered with empty right-items at the end

c# - 如何在数组中添加前n个数字C#