自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

.NET不用控件實(shí)現(xiàn)文件夾監(jiān)測(cè)系統(tǒng)

開(kāi)發(fā) 后端
盡管.NET中存在不少的控件,但靠自己實(shí)現(xiàn)一些功能對(duì)于程序員了解.NET的編譯機(jī)制還是有幫助的。不能簡(jiǎn)單的認(rèn)為這是重復(fù)造輪子,而是一種學(xué)習(xí)的過(guò)程。

最近遇到一個(gè)項(xiàng)目,在項(xiàng)目之中想監(jiān)測(cè)一個(gè)文件夾里面文件的變化情況,另外想做成開(kāi)機(jī)啟動(dòng),并且能夠提醒客戶,便于客戶做出相應(yīng)的動(dòng)作。

在網(wǎng)上搜集了不少的東西,對(duì)這個(gè)我這個(gè)東西起了不少的作用,但是總是零零碎碎的,最后還是跌跌撞撞的寫(xiě)出來(lái)了,測(cè)試了一下還行,本人本著互聯(lián)網(wǎng)的互助原則,將這個(gè)小東西放在網(wǎng)上,希望能對(duì)大家有一個(gè)拋磚引玉的作用,同時(shí)也希望大家能多提意見(jiàn)!呵呵…轉(zhuǎn)入正題吧。

在網(wǎng)上搜索了一下http://www.hackchina.com/cont/27825網(wǎng)站是一個(gè)老外的東西,還是比較好用,但是源代碼沒(méi)能下載下來(lái)!嘿嘿…可能點(diǎn)背。所以就下決心自給自足了。

其實(shí)程序的核心類就是.net的一個(gè)控件1 ,但是當(dāng)時(shí)沒(méi)有發(fā)現(xiàn),做完以后有一種被捉弄的感覺(jué),呵呵…大家僅供借鑒!

本人在程序里面沒(méi)有直接用控件,代碼如下:

  1. public static FileSystemWatcher watcher = new FileSystemWatcher(); 

當(dāng)然問(wèn)題的解決這樣未免有點(diǎn)太輕松了!接下來(lái)就是為對(duì)watcher 的事件捕獲并進(jìn)行相應(yīng)處理,代碼如下:

  1. watcher.Changed += new FileSystemEventHandler(OnChanged);   
  2. watcher.Created += new FileSystemEventHandler(OnChanged);   
  3. watcher.Deleted += new FileSystemEventHandler(OnChanged);   
  4.  watcher.Renamed += new RenamedEventHandler(OnRenamed);   

相信看我問(wèn)東東的同仁們到現(xiàn)在也就知道怎么做了,再次不再贅述。另外就是由于文件夾的檢測(cè)所以會(huì)觸及到系統(tǒng)安全,所以在程序之中程序的權(quán)限設(shè)置就顯得很有必要,在程序之中加入下面的代碼,能有效地避免程序被誤認(rèn)為是非法操作。

  1. [PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]  

到此,整個(gè)程序的主要功能更就完了,另外就是一個(gè)開(kāi)機(jī)啟動(dòng)的設(shè)置和取消,另外就是監(jiān)測(cè)報(bào)告!這些問(wèn)題,開(kāi)機(jī)啟動(dòng)的設(shè)置和取消是windows的注冊(cè)表編程,也就不賣(mài)關(guān)子了,直接給大家代碼吧:

  1.  private void AutoRun_CheckedChanged(object sender, EventArgs e)   
  2.  {   
  3.  if (AutoRun.Checked)//開(kāi)機(jī)自動(dòng)啟動(dòng)   
  4. {   
  5. try   
  6. {   
  7.  RegistryKey runKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run"true);   
  8.  runKey.SetValue("文件夾監(jiān)測(cè).exe", System.Windows.Forms.Application.ExecutablePath);   
  9. runKey.Close();   
  10.  }   
  11.  catch (IOException)   
  12.  {   
  13.  return ;   
  14. }   
  15.  }   
  16.  else //不開(kāi)機(jī)自動(dòng)啟動(dòng)注冊(cè)表信息刪除   
  17.  {   
  18.  RegistryKey software = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run"true);   
  19. string[] aimnames = software.GetValueNames();   
  20.  foreach (string aimKey in aimnames)   
  21.  {   
  22.  if (aimKey.Equals("文件夾監(jiān)測(cè).exe"))   
  23.  {   
  24.  software.DeleteValue("文件夾監(jiān)測(cè).exe") ;   
  25.  software.Close();   
  26.  break;   
  27.  }   
  28.  }   
  29.  }   
  30. }  

這些就是開(kāi)機(jī)啟動(dòng)的設(shè)置以及取消代碼。另外程序可以類似于QQ做消息(文件夾變動(dòng)消息)提示,當(dāng)然這些都是一些小把戲,大家應(yīng)該比我懂得多,我就不獻(xiàn)丑了,現(xiàn)在就講運(yùn)行的結(jié)果展示一下:

這是啟動(dòng)界面:

2

上面是軟件的啟動(dòng)界面,當(dāng)然上面有我的QQ以及郵箱,大家有什么指教的,這些聯(lián)系方式一般都是可以找到的,除非我睡覺(jué),呵呵…

這是程序的程序開(kāi)始監(jiān)測(cè)的結(jié)果:

3

上面是運(yùn)行效果,下面是最小化到托盤(pán)、以及消息提示如下圖展示:

41 紅色矩形的就是運(yùn)行的檢測(cè)程序.代碼程序里面很全面.

原文鏈接:http://www.cnblogs.com/wukaibo/archive/2011/04/05/2006179.html

【編輯推薦】

  1. C#取整函數(shù)實(shí)例應(yīng)用詳解
  2. C#單元測(cè)試的一個(gè)小故事
  3. C#單元測(cè)試使用的必要性的淺析
  4. C#單元測(cè)試概念及作用的淺析
  5. C#單元測(cè)試的運(yùn)行淺析

 

【責(zé)任編輯:彭凡 TEL:(010)68476606】

 

 

責(zé)任編輯:彭凡 來(lái)源: 博客園
相關(guān)推薦

2009-10-27 08:56:22

VB.NET文件夾

2010-01-21 13:34:56

VB.NET刪除文件夾

2010-01-13 10:25:30

VB.NET文件夾操作

2011-05-23 17:00:29

2009-10-27 17:59:16

VB.NET刪除文件夾

2009-10-27 11:03:16

VB.NET文件夾操作

2022-11-16 16:28:21

2009-08-05 15:39:57

文件夾權(quán)限設(shè)置

2009-08-31 12:56:36

C#創(chuàng)建文件夾

2017-03-01 14:16:36

Linux文件管理器隱藏文件

2009-12-03 14:10:06

PHP壓縮文件夾

2017-04-07 11:00:25

Windows 7Windows自動(dòng)備份

2011-07-27 14:52:37

iPhone 系統(tǒng) 文件

2012-12-25 10:41:27

文件夾加密

2010-12-31 13:35:25

文件夾重定向

2021-04-06 11:33:25

Windows 10Windows微軟

2012-05-23 16:50:27

ASP.NET

2009-08-31 12:31:45

C#創(chuàng)建文件夾

2020-04-15 18:46:19

WindowsLinux文件夾系統(tǒng)

2009-12-03 10:18:32

Linux文件夾執(zhí)行權(quán)限
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)