學習**:
主要方法:
啟動某個服務
停止某個服務
判斷是否安裝了某個服務
判斷某個服務是否啟動
在操作windows服務之前,先新增引用
system.serviceprocess
1.判斷是否安裝某服務
/// /// 判斷是否安裝了某個服務
///
///
///
public static bool iswindowsserviceinstalled(string servicename)
}return false;
}catch
}
測試:
檢視服務
此時,我們可以看到mysql是存在的,也是開啟的……此處只測試開啟的服務,關閉的服務應該是相同的道理,偷個懶,就不去測試了。
在主函式裡面新增使用,測試結果
測試結果
此時的服務是開啟的,我們先看一下,如何關閉這個服務……
/// /// 停止某個服務
///
///
public static void stopservice(string servicename)}}
catch
}
在主方法裡使用測試:
測試關閉服務
當服務關閉時,如果再次執行關閉操作也並不會報錯!
此時的服務是關閉的,那接下來看看這個方法,判斷服務是否開啟:
/// /// 判斷某個服務是否啟動
///
///
public static bool isstart(string servicename)}}
}catch
return result;
}
在主方法裡使用測試:
static void main(string args)
可見此時的服務確實是關閉的。
image.png
最後我們再寫乙個啟動服務的方法,進行測試:
/// /// 啟動某個服務
///
///
public static void startservice(string servicename)}}
catch
}
在主方法裡面把該服務啟動,然後再進行判斷該服務是否啟動。
static void main(string args)
此處開啟服務需要一點時間……所以在起初判斷服務開啟和後來的判斷有一點停頓時間。
測試結果
好了,練習到此結束。
C 開發windows服務的一些心得
最近在做乙個windows服務的專案,發現並解決了一些問題,拿出來和大家分享一下,以下windows服務簡稱 服務 文章會在適合時間更新,因為朋友們在不斷提出新的意見或思路,感謝 1.服務如何在某種情況下彈出乙個窗體?第一種解決辦法,用安裝程式的 修改登錄檔來完成 1.右擊服務的檢視設計介面的空白處...
c 一些操作
使用友元函式過載 這樣的賦值運算,最好使用成員函式,返回運算子左側的引用,這樣既可以連續賦值,又可以直接傳遞引用,不用呼叫拷貝建構函式將返回的臨時變數複製給左側引數,增加效率。ex 過載加法 a b,友元不屬於任何物件,所以它沒有this指標 friend test operator const t...
windows的一些命令
start 檔名 自動用預設程式開啟檔案 例 start a.txt 自動用記事本開啟a.txt 還有 c windows 這樣的,可以直接開啟相應的資料夾 在執行視窗輸入 scanreg fix 用於檢測掃瞄登錄檔 scnareg restore 則可以使登錄檔恢復到最近幾天的樣子 ipconfi...