[點晴永久免費OA]使用C#判斷Windows系統(tǒng)數(shù)據(jù)庫后臺服務(wù)器是否已經(jīng)啟動
當(dāng)前位置:點晴教程→點晴OA辦公管理信息系統(tǒng)
→『 經(jīng)驗分享&問題答疑 』
在很多項目啟動的時候都需要連接到數(shù)據(jù)庫,因此判斷數(shù)據(jù)庫服務(wù)器是否啟動就十分必要了,如何判斷數(shù)據(jù)庫服務(wù)器是否啟動呢?
可以通過判斷數(shù)據(jù)庫服務(wù)是否啟動來判斷,當(dāng)然我看了下網(wǎng)上也有人說通過注冊表也可以判斷,下面我就說說我的實現(xiàn)方式:
/// <summary>
/// 判斷數(shù)據(jù)庫服務(wù)是否已經(jīng)啟動,如果已經(jīng)啟動就返回True,否則返回False
/// </summary>
/// <returns></returns>
private bool JudgeDBServerStatus()
{
bool ExistFlag = false;
ServiceController[] service = ServiceController.GetServices();
for (int i = 0; i < service.Length; i++)
{
//因為我們安裝數(shù)據(jù)庫系統(tǒng)服務(wù)端時,一般都會命名為xxx,這樣我們數(shù)據(jù)庫服務(wù)名默認(rèn)就為MSSQL$xxx了
//當(dāng)然也不完全是這樣的了,根據(jù)具體環(huán)境而異哦,也可以使用服務(wù)顯示名來判斷如:service[i].DisplayName
//如果需要判斷服務(wù)是否運行中,加上 && service[i].Status == ServiceControllerStatus.Running
//如果需要啟動或停止服務(wù),service[i].Start();、service[i].Stop();
if (service[i].ServiceName.ToString().Contains("MSSQL$"))
{
ExistFlag = true;
//string strOuput = string.Format("數(shù)據(jù)庫服務(wù)器啟動了服務(wù)名:{0},服務(wù)顯示名:{1}\n", service[i].ServiceName, service[i].DisplayName);
}
}
return ExistFlag;
}
該文章在 2022/8/25 9:00:22 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |