none
C# 检测SQL Server是否安装,并检查服务器是否启动 RRS feed

  • 问题

  • C# 检测SQL Server是否安装,并检查服务器是否启动,如果没有安装提示用户安装,如果没有启动SQL Server服务器则启动服务器
    • 已移动 Sheng Jiang 蒋晟 2009年9月13日 17:41 SQL Server问题 (发件人:ADO.NET 与 LINQ)
    2009年9月13日 14:18

答案

  • 用 SQL -DMO 可以。


    family as water
    • 已标记为答案 kane zhang 2009年9月14日 7:43
    2009年9月14日 1:27
  • How to use sql-dmo if the machine doesn't have sql engine installed? WMI may work.
    • 已标记为答案 kane zhang 2009年9月14日 7:43
    2009年9月14日 2:06
  • SqlConnection con = new SqlConnection("server=.;pwd=;uid=sa;database=master");
                string strShutdown = "SHUTDOWN WITH NOWAIT";
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = con;
                cmd.Connection.Open();
                cmd.CommandText = strShutdown;
                cmd.ExecuteNonQuery();
                MessageBox.Show("已成功断开服务");


    Process pro = new Process();
                pro.StartInfo.FileName = "cmd.exe";
                pro.StartInfo.UseShellExecute = false;
                pro.StartInfo.RedirectStandardInput = true;
                pro.StartInfo.RedirectStandardOutput = true;
                pro.StartInfo.RedirectStandardError = true;
                pro.StartInfo.CreateNoWindow = true;
                pro.Start();
                pro.StandardInput.WriteLine("net start mssqlserver");
                pro.StandardInput.WriteLine("exit");
                MessageBox.Show("已成功开启服务");
    做最好的自己
    • 已标记为答案 kane zhang 2009年9月14日 7:42
    2009年9月14日 6:57

全部回复

  • 用 SQL -DMO 可以。


    family as water
    • 已标记为答案 kane zhang 2009年9月14日 7:43
    2009年9月14日 1:27
  • How to use sql-dmo if the machine doesn't have sql engine installed? WMI may work.
    • 已标记为答案 kane zhang 2009年9月14日 7:43
    2009年9月14日 2:06


  • 先用 WMI 枚举服务,如果有mssqlserver 在 检查是否启动 如果没启动 在启动

    这个简单~~~


    family as water
    2009年9月14日 2:09
  • SqlConnection con = new SqlConnection("server=.;pwd=;uid=sa;database=master");
                string strShutdown = "SHUTDOWN WITH NOWAIT";
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = con;
                cmd.Connection.Open();
                cmd.CommandText = strShutdown;
                cmd.ExecuteNonQuery();
                MessageBox.Show("已成功断开服务");


    Process pro = new Process();
                pro.StartInfo.FileName = "cmd.exe";
                pro.StartInfo.UseShellExecute = false;
                pro.StartInfo.RedirectStandardInput = true;
                pro.StartInfo.RedirectStandardOutput = true;
                pro.StartInfo.RedirectStandardError = true;
                pro.StartInfo.CreateNoWindow = true;
                pro.Start();
                pro.StandardInput.WriteLine("net start mssqlserver");
                pro.StandardInput.WriteLine("exit");
                MessageBox.Show("已成功开启服务");
    做最好的自己
    • 已标记为答案 kane zhang 2009年9月14日 7:42
    2009年9月14日 6:57