程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#發現之旅:C#開發Windows Service程序(上)(11)

C#發現之旅:C#開發Windows Service程序(上)(11)

編輯:關於C語言

在該按鈕事件處理中,我們查詢數據表FileSystemLog,對每一條查詢所得 的數據創建一個ListVIEwItem項目,並根據記錄的EventStyle值設置該列表項目的圖標序號 和分組狀態。

工具條的“刪除記錄”按鈕用於刪除列表中選擇的項目,其 點擊事件處理為

private void btnDelete_Click(object sender, EventArgs e)
{
    if (lvwRecord.SelectedItems.Count > 0)
    {
        using (System.Data.IDbCommand cmd = Util.DBConnection.CreateCommand())
        {
            for (int iCount = lvwRecord.Items.Count - 1; iCount >= 0; iCount--)
            {
                ListVIEwItem item = lvwRecord.Items[iCount];
                if (item.Selected)
                {
                    cmd.CommandText = "Delete From FileSystemLog Where RecordID = '" + item.Tag + "'";
                    cmd.ExecuteNonQuery();
                    lvwRecord.Items.Remove(item);
                }
            }//for
        }//using
    }
}

在刷新列表中,我們將列表項目的Tag屬性值設置為數據庫記錄的編號,在 這裡我們利用這個事先保存的數據庫記錄的編號拼湊出SQL語句然後刪除指定的記錄。

工具條的“啟動服務”按鈕用於啟動後台的文件監視服務。其點擊事件處 理為

private void btnStartService_Click(object sender, EventArgs e)
{
    if (bolServiceInstalled == false)
        return;
    using (System.ServiceProcess.ServiceController control = new System.ServiceProcess.ServiceController("MyFileSystemWatcher"))
    {
        if (control.Status == System.ServiceProcess.ServiceControllerStatus.Stopped)
        {
            control.Start();
        }
    }
}

在這裡我們創建一個ServiceController對象,若判斷出服務的狀態為停止 ,則調用控制器的Start方法來啟動服務,在這裡Start方法內部只是通知操作系統啟動指定 名稱的服務,它發送通知後立即返回,並不會等待服務啟動後返回。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved