給電腦裝個監視器--VB程式設計一例 (轉)

gugu99發表於2008-07-07
給電腦裝個監視器--VB程式設計一例 (轉)[@more@] 

給裝個監視器--VB一例

--------------------------------------------------------------------------------
  當你不在你的機器旁邊時,你是否會擔心有人在你的機器上執行了,給你的機器帶來損壞;或有小孩子在你的電腦上“胡鬧”。你是否想到設計一個監視的程式,可以發現有人在你的機器上執行了哪些不當的程式,或當有小孩子在你的機器上玩遊戲時,立刻強制關閉遊戲。讀完了本文,你就可以著手去做了。

  一、設定 OnTimer 事件

  要實現監視系統,首先要實現的是 OnTimer 事件,就是要程式每隔一段時間去“檢查”一下當前系統中有哪些程式在執行。
  你可裝載 Timer ,設定 Interval 屬性為“60000”
  這樣系統差不多會每隔1分鐘就會“檢查”一下當前系統有哪些程式正在執行。
  如果你覺得間隔時間太短,可以改用如下程式碼:
  Private Sub Timer1_Timer()
  Dim n As Integer
  n = n + 1
  If n = 2 Then″檢查″ ′這裡設定為2分鐘,你可自己改
  End Sub

  二、監視系統的執行

  接下來的問題是怎樣去“檢查”當前系統中有哪些程式在執行。
  方法一:我們知道, 程式基本上都是以視窗的形式執行的,每個程式都對應一個主視窗和若干子視窗,我們只要用 GetWindow 獲取每個程式的主視窗的控制程式碼 HWND,接著用 API 函式 GetWindowText 得到這些視窗的標題,就可以判斷到底是哪些程式在執行了。
  方法二:使用 API 函式 FindWindow 直接查詢
  我們這裡就用方法二(比較簡單)。

  三、關閉程式

  發現不適當的程式,關閉它,可以用 API 函式 PostMessage。

  四、程式示例

  下面給出一個例項,它是用 5.0 編制而成的。本程式每隔 2 分鐘“檢查”一下視窗。如果執行的是“掃雷”、“傷心小棧”等遊戲,就強行關閉它,併發出警告。具體程式程式碼如下:

  1、建立基於對話方塊的應用程式,標題為“系統監視器”,裝載 2 個 Commanutton 控制元件,Caption 屬性分別為:“開始監視”、“程式結束”。

  2、首先宣告API 函式 FindWindow 及程式所需要的各變數
  Private Declare Function FindWindow Lib ″user32″ Alias ″FindWindowA″(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
  Private Declare Function PostMessage Lib ″user32″ Alias″PostMessageA″ (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
  Const WM-CLOSE = &H10
  Const WM-QUIT = &H12
  Dim Handle As Integer
  Dim n As Integer

  3、定義關閉程式視窗的子程式
  Sub CloseWin() ′關閉指定視窗
  Dim WinText(1 To 3) As String
  Dim i As Integer
  WinText(1) = ″掃雷″
  ′關閉下面的3個遊戲,各位可以自己定義,不過程式視窗的標題一定要對,不然程式是不會被關閉的。
  WinText(2) =″ 網上傷心小棧″
  WinText(3) = ″紙牌″
  For i = 1 To 3
  Handle = FindWindow(vbNullString, WinText(i))
  PostMessage Handle, WM-CLOSE, 0, 0
  Next
  If Handle <> 0 Then MsgBox ″呵呵,你又在偷玩遊戲″
  End Sub
  最後的補充:如果想要做一個非常完整的系統監視程式,那麼你可要花些時間了。
  第1步:首先,修改登錄檔,在啟動時就執行本程式,並且不能關閉。
  第2步:要 API 函式使本程式更隱蔽些。
  第3步:還需要隨時修改檢測的“視窗標題”,當有人執行遊戲程式時,把他玩遊戲開始時間和玩得什麼遊戲,儲存到中去等等功能。
  本程式用 VB 5.0 編譯透過,在中文 環境下執行良好 。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-1006883/,如需轉載,請註明出處,否則將追究法律責任。

相關文章