最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

通過C#調(diào)用cmd來修改服務(wù)啟動類型

 更新時(shí)間:2012年12月16日 14:42:04   作者:  
可以使用System.ServiceProcess.ServiceController這個(gè)類允許連接到正在運(yùn)行或者已停止的服務(wù)、對其進(jìn)行操作或獲取有關(guān)它的信息但是這個(gè)類并沒有提供修改服務(wù)啟動類型的方法,可以通過C#調(diào)用cmd來修改
可以使用System.ServiceProcess.ServiceController這個(gè)類允許連接到正在運(yùn)行或者已停止的服務(wù)、對其進(jìn)行操作或獲取有關(guān)它的信息。ServiceController 提供了開始和停止服務(wù)的方法(Start, Stop)。
但是這個(gè)類并沒有提供修改服務(wù)啟動類型的方法,可以通過C#調(diào)用cmd來修改

參考網(wǎng)上的這個(gè)方法
//設(shè)置服務(wù)的啟動類型
//sServiceName服務(wù)名稱
//iStartType要設(shè)置的啟動類型 2:自動,3:手動,4:禁用
//返回成功狀態(tài) true:成功,false:失敗
復(fù)制代碼 代碼如下:

public Boolean SetWindowsServiceStartType(String sServiceName, int iStartType)
{
try
{
System.Diagnostics.ProcessStartInfo objProcessInf = new System.Diagnostics.ProcessStartInfo();
objProcessInf.FileName = "cmd.exe";
objProcessInf.CreateNoWindow = false;
objProcessInf.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
string sStartState = "boot";
switch (iStartType)
{
case 1:
{
sStartState = "system";
break;
}
case 2:
{
sStartState = "auto";
break;
}
case 3:
{
sStartState = "demand";
break;
}
case 4:
{
sStartState = "disabled";
break;
}
default:
{
break;
}
}
objProcessInf.Arguments = "/c sc config " + sServiceName + " start= " + sStartState;
System.Diagnostics.Process.Start(objProcessInf);
return true;
}
catch
{
return false;
}
}

復(fù)制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.ServiceProcess;
using Microsoft.Win32;
namespace Service
{
public class ClassService
{
private string ServiceName; //服務(wù)名稱
private ServiceController sc;
/// <summary>
/// 服務(wù)操作
/// </summary>
/// <param name="ServiceName">服務(wù)名稱</param>
public ClassService(string ServiceName)
{
this.ServiceName = ServiceName;
this.sc = new ServiceController(ServiceName);
}
/// <summary>
/// 啟動服務(wù)
/// </summary>
/// <returns></returns>
public bool StartService()
{
try
{
if (sc.Status != ServiceControllerStatus.Running)
sc.Start();
else
return false;
}
catch (Exception)
{
return false;
}
return true;
}
/// <summary>
/// 停止服務(wù)
/// </summary>
/// <returns></returns>
public bool StopService()
{
try
{
if (sc.Status != ServiceControllerStatus.Stopped)
sc.Stop();
else
return false;
}
catch (Exception)
{
return false;
}
return true;
}
/// <summary>
/// 重啟服務(wù)
/// </summary>
/// <returns></returns>
public bool RestartService()
{
if (StopService())
{
if (StartService())
return true;
else
return false;
}
else
return false;
}
/// <summary>
/// 獲取服務(wù)啟動類型
/// </summary>
/// <returns>2:自動 3:手動 4:禁用 0:獲取失敗</returns>
public int GetServiceStartMode()
{
int Mode = 0;
try
{
RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SYSTEM\CurrentControlSet\services\" + ServiceName);
Mode = Convert.ToInt32(key.GetValue("Start"));
key.Close();
}
catch (Exception)
{
return 0;
}
return Mode;
}
/// <summary>
/// 設(shè)置服務(wù)啟動類型
/// </summary>
/// <param name="Mode">2:自動 3:手動 4:禁用</param>
/// <returns></returns>
public bool SetServiceStartMode(int Mode)
{
try
{
RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SYSTEM\CurrentControlSet\services\" + ServiceName, true);
key.SetValue("Start", Mode);
key.Close();
}
catch (Exception)
{
return false;
}
return true;
}
}
}

相關(guān)文章

  • C#多線程的相關(guān)操作講解

    C#多線程的相關(guān)操作講解

    本文詳細(xì)講解了C#多線程的相關(guān)操作,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • C# GDI在控件上繪圖的方法

    C# GDI在控件上繪圖的方法

    這篇文章主要介紹了C# GDI在控件上繪圖的方法,包括了常見的鼠標(biāo)事件及繪圖操作,需要的朋友可以參考下
    2014-09-09
  • C# 使用NModbus的實(shí)現(xiàn)示例

    C# 使用NModbus的實(shí)現(xiàn)示例

    本文主要介紹了在C#中使用NModbus4庫進(jìn)行Modbus通信,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • c#抽簽系統(tǒng)的實(shí)現(xiàn)示例

    c#抽簽系統(tǒng)的實(shí)現(xiàn)示例

    本文主要介紹了c#抽簽系統(tǒng)的實(shí)現(xiàn)示例,一個(gè)基于c#的簡單抽簽系統(tǒng),可以重新導(dǎo)入數(shù)據(jù),清空數(shù)據(jù)。文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • c# 鉤子學(xué)習(xí)筆記

    c# 鉤子學(xué)習(xí)筆記

    今天弄了一下c#的鉤子,沒弄好,但是鉤子安裝成功,可以捕獲鍵盤事件。
    2011-04-04
  • 關(guān)于C#中的Invoke示例詳解

    關(guān)于C#中的Invoke示例詳解

    一直對invoke和begininvoke的使用和概念比較混亂,這兩天看了些資料,對這兩個(gè)的用法和原理有了些新的認(rèn)識和理解,下面這篇文章主要給大家介紹了關(guān)于C#中Invoke的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • C#無損壓縮圖片

    C#無損壓縮圖片

    本文主要介紹了C#無損壓縮圖片的相關(guān)知識。具有很好的參考價(jià)值。下面跟著小編一起來看下吧
    2017-04-04
  • C#實(shí)現(xiàn)手機(jī)拍照并且保存水印照片

    C#實(shí)現(xiàn)手機(jī)拍照并且保存水印照片

    這篇文章主要介紹了C#實(shí)現(xiàn)手機(jī)拍照并且保存水印照片的相關(guān)資料,非常不錯,具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-11-11
  • C# 創(chuàng)建、部署和調(diào)用WebService簡單示例

    C# 創(chuàng)建、部署和調(diào)用WebService簡單示例

    這篇文章主要為大家詳細(xì)介紹了C# 創(chuàng)建、部署和調(diào)用WebService的簡單示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • C#有效防止同一賬號多次登錄(附三種方法)

    C#有效防止同一賬號多次登錄(附三種方法)

    這篇文章主要介紹了C#有效防止同一賬號多次登錄的方法,有效防止同一賬號多次登錄的方法很多,比如用數(shù)據(jù)庫來記錄用戶登錄情況、用Application來保存用戶登錄信息、用Cache來保存信息等,感興趣的小伙伴們可以參考一下
    2015-11-11

最新評論

离岛区| 陈巴尔虎旗| 伊川县| 彩票| 灌南县| 建平县| 武义县| 平乡县| 临西县| 靖江市| 务川| 忻城县| 安远县| 襄樊市| 巴彦淖尔市| 二连浩特市| 固阳县| 洛隆县| 巢湖市| 青浦区| 陕西省| 光山县| 黔东| 当阳市| 斗六市| 含山县| 重庆市| 德兴市| 迁安市| 新乡市| 定结县| 辽宁省| 东安县| 册亨县| 棋牌| 汶川县| 平乡县| 义乌市| 桑植县| 泸西县| 河北省|