Wie erkennen den Status des Dienstes SQL Server Express, oder starten Sie den Dienst SQL Server Express mit Visual Basic oder Visual C#

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 912426 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Zusammenfassung

Microsoft SQL Server 2005 Express Edition ist ein Service-basiertes Produkt. Wenn Sie Microsoft Visual Studio 2005-Anwendungen auf SQL Server 2005 Express Edition erstellen, können Sie den Status des SQL Server Express-Dienstes beim Starten der Anwendung erkennen. ServiceController -Klasse können Sie Folgendes tun:
  • Den Status des Dienstes SQL Server Express zu erkennen.
  • Starten Sie den Dienst SQL Server Express, wenn es nicht ordnungsgemäß gestartet wurde.
Hinweis Die Standardinstallation von SQL Server 2005 Express Edition verwendet einen Instanznamen SQLExpress. Dieser Instanzname ordnet der Dienstname MSSQL$ SQLExpress.

Weitere Informationen

Um der ServiceController -Klasse in eine Visual Studio-Konsolenanwendung zu erkennen und zum Starten des Dienstes SQL Server Express verwenden, gehen Sie folgendermaßen vor:
  1. Starten Sie Visual Studio 2005.
  2. Klicken Sie im Menü Datei aufneuund klicken Sie dann auf Projekt.
  3. Klicken Sie unter Projekttypenauf Visual Basic oder für VisualC++- , und klicken Sie dann aufKonsolenanwendung unter Visual Studio Installedtemplates.

    Hinweis Standardmäßig wird die Datei Module1.vb in Visual Basic-Projekt erstellt. Standardmäßig wird die Datei "Program.cs" im für VisualC++-Projekt erstellt.
  4. Verwenden Sie ConsoleApplication1 als den Namen in das Feld Name , und klicken Sie dann aufOK.
  5. Fügen Sie einen Verweis auf den Namespace "System.ServiceProcess". TODO, gehen Sie folgendermaßen vor:
    1. Klicken Sie im Menü Projekt auf Verweis hinzufügen.
    2. Klicken Sie auf der Registerkarte .NETSystem.ServiceProcessklicken Sie auf, und klicken Sie dann auf OK.
  6. Ersetzen Sie den vorhandenen Code mit der Followingcode.

    Hinweis Ersetzen Sie den Code in der Datei Module1.vb in Visual Basic-Projekt. Ersetzen Sie den Code in der Program.csfile in der Visual C#-Projekt.

    Visual Basic
    Imports System
    Imports System.ServiceProcess
    
    Module Module1
    
        Sub Main()
    
            Dim myServiceName As String = "MSSQL$SQLEXPRESS" 'service name of SQL Server Express
            Dim status As String  'service status (For example, Running or Stopped)
            Dim mySC As ServiceController
    
            Console.WriteLine("Service: " & myServiceName)
    
            'display service status: For example, Running, Stopped, or Paused
            mySC = New ServiceController(myServiceName)
            Try
                status = mySC.Status.ToString
            Catch ex As Exception
                Console.WriteLine("Service not found. It is probably not installed. [exception=" & ex.Message & "]")
                Console.ReadLine()
                End
            End Try
            Console.WriteLine("Service status : " & status)
    
            'if service is Stopped or StopPending, you can run it with the following code.
            If mySC.Status.Equals(ServiceControllerStatus.Stopped) Or mySC.Status.Equals(ServiceControllerStatus.StopPending) Then
                Try
                    Console.WriteLine("Starting the service...")
                    mySC.Start()
                    mySC.WaitForStatus(ServiceControllerStatus.Running)
                    Console.WriteLine("The service is now " & mySC.Status.ToString)
    
                Catch ex As Exception
                    Console.WriteLine("Error in starting the service: " & ex.Message)
                End Try
            End If
    
            Console.WriteLine("Press a key to end the application...")
            Console.ReadLine()
            End
        End Sub
    End Module
    Visual C#
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.ServiceProcess;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main()
            {
    
                string myServiceName = "MSSQL$SQLEXPRESS"; //service name of SQL Server Express
                string status; //service status (For example, Running or Stopped)
    
                Console.WriteLine("Service: " + myServiceName);
    
                //display service status: For example, Running, Stopped, or Paused
                ServiceController mySC = new ServiceController(myServiceName);
    
                try
                {
                    status = mySC.Status.ToString();
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Service not found. It is probably not installed. [exception=" + ex.Message + "]");
                    Console.ReadLine();
    
                    return;
    
                }
    
                //display service status: For example, Running, Stopped, or Paused
                Console.WriteLine("Service status : " + status);
    
                //if service is Stopped or StopPending, you can run it with the following code.
                if (mySC.Status.Equals(ServiceControllerStatus.Stopped) | mySC.Status.Equals(ServiceControllerStatus.StopPending))
                {
                    try
                    {
                        Console.WriteLine("Starting the service...");
                        mySC.Start();
                        mySC.WaitForStatus(ServiceControllerStatus.Running);
                        Console.WriteLine("The service is now " + mySC.Status.ToString());
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine("Error in starting the service: " + ex.Message);
    
                    }
    
                }
    
                Console.WriteLine("Press a key to end the application...");
                Console.ReadLine();
    
                return;
    
            }
    
        }
    }
  7. Drücken Sie STRG + F5, um die Arbeitsgangnummer ausführen.

Informationsquellen

Weitere Informationen über den Namespace "System.ServiceProcess" finden Sie auf der folgenden Microsoft Developer Network (MSDN)-Website:
http://msdn2.Microsoft.com/en-us/library/System.ServiceProcess (VS

Eigenschaften

Artikel-ID: 912426 - Geändert am: Samstag, 23. November 2013 - Version: 2.0
Die Informationen in diesem Artikel beziehen sich auf:
Keywords: 
kbprb kbhowto kbmt KB912426 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell übersetzt und wird dann möglicherweise mithilfe des Community Translation Framework (CTF) von Mitgliedern unserer Microsoft Community nachbearbeitet. Weitere Informationen zu CTF finden Sie unter http://support.microsoft.com/gp/machine-translation-corrections/de.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 912426
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com