Freigeben über


ServiceController.ServiceType-Eigenschaft

Ruft den Typ des Dienstes ab, auf den dieses Objekt verweist.

Namespace: System.ServiceProcess
Assembly: System.ServiceProcess (in system.serviceprocess.dll)

Syntax

'Declaration
Public ReadOnly Property ServiceType As ServiceType
'Usage
Dim instance As ServiceController
Dim value As ServiceType

value = instance.ServiceType
public ServiceType ServiceType { get; }
public:
property ServiceType ServiceType {
    ServiceType get ();
}
/** @property */
public ServiceType get_ServiceType ()
public function get ServiceType () : ServiceType

Eigenschaftenwert

Einer der ServiceType-Werte, mit dem der Netzwerkdiensttyp angegeben wird.

Ausnahmen

Ausnahmetyp Bedingung

Win32Exception

Fehler beim Zugriff auf eine System-API.

Hinweise

Der Diensttyp gibt an, auf welche Weise der Dienst vom System verwendet wird. Der Wert der ServiceType-Eigenschaft stellt eine Gruppe von Flags dar, die durch einen bitweisen OR-Operator verknüpft sind.

Beispiel

Im folgenden Beispiel werden die Gerätetreiberdienste auf dem lokalen Computer mithilfe der ServiceController-Klasse angezeigt.

Dim scDevices() As ServiceController
scDevices = ServiceController.GetDevices()

Dim numAdapter As Integer
Dim numFileSystem As Integer
Dim numKernel As Integer
Dim numRecognizer As Integer

' Display the list of device driver services.
Console.WriteLine("Device driver services on the local computer:")

Dim scTemp As ServiceController
For Each scTemp In  scDevices
   ' Display the status and the service name, for example,
   '   [Running] PCI Bus Driver
   '             Type = KernelDriver

   Console.WriteLine(" [{0}] {1}", scTemp.Status, scTemp.DisplayName)
   Console.WriteLine("           Type = {0}", scTemp.ServiceType)

   ' Update counters using the service type bit flags.
   If (scTemp.ServiceType And ServiceType.Adapter) <> 0 Then
      numAdapter = numAdapter + 1
   End If
   If (scTemp.ServiceType And ServiceType.FileSystemDriver) <> 0 Then
      numFileSystem = numFileSystem + 1
   End If
   If (scTemp.ServiceType And ServiceType.KernelDriver) <> 0 Then
      numKernel = numKernel + 1
   End If
   If (scTemp.ServiceType And ServiceType.RecognizerDriver) <> 0 Then
      numRecognizer = numRecognizer + 1
   End If

Next scTemp

Console.WriteLine()
Console.WriteLine("Total of {0} device driver services", scDevices.Length)
Console.WriteLine("  {0} are adapter drivers", numAdapter)
Console.WriteLine("  {0} are file system drivers", numFileSystem)
Console.WriteLine("  {0} are kernel drivers", numKernel)
Console.WriteLine("  {0} are file system recognizer drivers", numRecognizer)
ServiceController[] scDevices;
scDevices = ServiceController.GetDevices();

int numAdapter = 0,
    numFileSystem = 0, 
    numKernel = 0, 
    numRecognizer = 0;
       
// Display the list of device driver services.
Console.WriteLine("Device driver services on the local computer:");

foreach (ServiceController scTemp in scDevices)
{
   // Display the status and the service name, for example,
   //   [Running] PCI Bus Driver
   //             Type = KernelDriver

   Console.WriteLine(" [{0}] {1}", 
                     scTemp.Status, scTemp.DisplayName);
   Console.WriteLine("           Type = {0}", scTemp.ServiceType); 

   // Update counters using the service type bit flags.
   if ((scTemp.ServiceType & ServiceType.Adapter) != 0)
   {
      numAdapter++;
   } 
   if ((scTemp.ServiceType & ServiceType.FileSystemDriver) != 0)
   {
      numFileSystem++;
   }  
   if ((scTemp.ServiceType & ServiceType.KernelDriver) != 0)
   {
      numKernel++;
   } 
   if ((scTemp.ServiceType & ServiceType.RecognizerDriver) != 0)
   {
      numRecognizer++;
   }

}

Console.WriteLine();
Console.WriteLine("Total of {0} device driver services", scDevices.Length);
Console.WriteLine("  {0} are adapter drivers", numAdapter);
Console.WriteLine("  {0} are file system drivers", numFileSystem);
Console.WriteLine("  {0} are kernel drivers", numKernel);
Console.WriteLine("  {0} are file system recognizer drivers", numRecognizer);
array<ServiceController^>^scDevices = ServiceController::GetDevices();
if ( scDevices->Length )
{
   int numAdapter = 0,numFileSystem = 0,numKernel = 0,numRecognizer = 0;

   // Display the list of device driver services.
   Console::WriteLine(  "Device driver services on the local computer:" );

   for each (ServiceController^ scTemp in scDevices)
   {
      // Display the status and the service name, for example,
      //   [Running] PCI Bus Driver
      //             Type = KernelDriver
      Console::WriteLine(  " [{0}] {1}", scTemp->Status, scTemp->DisplayName );
      Console::WriteLine(  "           Type = {0}", scTemp->ServiceType );

      // Update counters using the service type bit flags.
      if ( (scTemp->ServiceType & ServiceType::Adapter) != (ServiceType)0 )
      {
         numAdapter++;
      }
      if ( (scTemp->ServiceType & ServiceType::FileSystemDriver) != (ServiceType)0 )
      {
         numFileSystem++;
      }
      if ( (scTemp->ServiceType & ServiceType::KernelDriver) != (ServiceType)0 )
      {
         numKernel++;
      }
      if ( (scTemp->ServiceType & ServiceType::RecognizerDriver) != (ServiceType)0 )
      {
         numRecognizer++;
      }
   }
   Console::WriteLine();
   Console::WriteLine(  "Total of {0} device driver services", scDevices->Length.ToString() );
   Console::WriteLine(  "  {0} are adapter drivers", numAdapter.ToString() );
   Console::WriteLine(  "  {0} are file system drivers", numFileSystem.ToString() );
   Console::WriteLine(  "  {0} are kernel drivers", numKernel.ToString() );
   Console::WriteLine(  "  {0} are file system recognizer drivers", numRecognizer.ToString() );
ServiceController scDevices[];
scDevices = ServiceController.GetDevices();

int numAdapter = 0;
int numFileSystem = 0;
int numKernel = 0;
int numRecognizer = 0;
// Display the list of device driver services.
Console.WriteLine("Device driver services on the local computer:");
ServiceController scTemp = null;
for (int iCtr = 0; iCtr < scDevices.get_Length(); iCtr++) {
    // Display the status and the service name, for example,
    // [Running] PCI Bus Driver
    // Type = KernelDriver
    scTemp = scDevices[iCtr];

    Console.WriteLine(" [{0}] {1}", scTemp.get_Status(), 
        scTemp.get_DisplayName());
    Console.WriteLine("           Type = {0}", 
        scTemp.get_ServiceType());
    // Update counters using the service type bit flags.
    if (System.Convert.ToInt32(scTemp.get_ServiceType() &
        ServiceType.Adapter) != 0) {
        numAdapter++;
    }
    if ((System.Convert.ToInt32(scTemp.get_ServiceType() & 
        ServiceType.FileSystemDriver)) != 0) {
        numFileSystem++;
    }
    if (System.Convert.ToInt32((scTemp.get_ServiceType() & 
        ServiceType.KernelDriver)) != 0) {
        numKernel++;
    }
    if (System.Convert.ToInt32((scTemp.get_ServiceType() & 
        ServiceType.RecognizerDriver)) != 0) {
        numRecognizer++;
    }
}

Console.WriteLine();
Console.WriteLine("Total of {0} device driver services", 
    System.Convert.ToString(scDevices.get_Length()));
Console.WriteLine("  {0} are adapter drivers", 
    System.Convert.ToString(numAdapter));
Console.WriteLine("  {0} are file system drivers", 
    System.Convert.ToString(numFileSystem));
Console.WriteLine("  {0} are kernel drivers", 
    System.Convert.ToString(numKernel));
Console.WriteLine("  {0} are file system recognizer drivers", 
    System.Convert.ToString(numRecognizer));

.NET Framework-Sicherheit

  • Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter .

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

ServiceController-Klasse
ServiceController-Member
System.ServiceProcess-Namespace
ServiceType