佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 如何使用vb 監(jiān)控電腦活動記錄

如何使用vb 監(jiān)控電腦活動記錄

熱門標簽:網站文章發(fā)布 智能手機 鐵路電話系統(tǒng) 服務器配置 銀行業(yè)務 呼叫中心市場需求 美圖手機 檢查注冊表項

最近看到了一個日文版的監(jiān)控電腦活動記錄的軟件,又在win 32 APi中看到了GetForegroundWindow函數,于是決定動動小手用vb寫個監(jiān)控電腦活動記錄的小程序。

主要函數

函數名 參數 返回值
GetForegroundWindow(void) 當前窗口的句柄
GetWindowText(HWND hWnd,LPTSTR lpString,Int nMaxCount) hWnd:窗口句柄
lpString:接收窗口標題文本的緩沖區(qū)的指針
nMaxCount:指定緩沖區(qū)中的最大字符數
如果成功則返回標題字符串的字符個數。如果窗口無標題欄或文本,或標題欄為空,或窗口或控制的句柄無效,則返回值為零。

實現

循環(huán)獲取當前焦點所在窗口的標題,然后寫入到日志文件中。最后設置開啟自啟動,隱藏命令行窗口。

Imports System
Imports System.io

Module Module1
 private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)
 'Win32 Api
 Private Declare Function GetForegroundWindow Lib "user32" () As Long
 Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
 
 Sub Main()
	 
  Dim bt As Boolean = True
	 ' 保存標題文本
  Dim stext As String
	 ' 保存上一個窗口句柄
	 Dim hwnd As Long
	 ' 保存當前窗口句柄
	 Dim curHwnd As Long
	 ' 書寫流寫入日志文件
	 Dim sw As StreamWriter
	 ' 日志文件保存路徑
	 Dim path As String = "c:\log.txt"
	 
	 ' 如果存在日志文件則跳過,否則創(chuàng)建一個日志文件
	 If Not File.Exists(path) Then
		 File.Create(path)
	 End If
	 
	 sleep(3000)
	 
	 ' 這里是個死循環(huán) 
	 While bt
	 
	  stext = Space(255)
		 ' 獲取當前窗口句柄
		 hwnd = GetForegroundWindow
		 
		 ' 如果當前是新窗口則寫入新窗口標題
		 If hwnd > curHwnd Then 
		  curHwnd = hwnd
				' 獲取窗口標題
				GetWindowText(hwnd,stext,255)
				
				sw = System.IO.File.AppendText(path)
				
				' 寫入新窗口標題,格式 yyyy年mm月dd日 hh:hh:ss + 標題
				Using sw
					sw.WriteLine(String.Format("{0:F}", DateTime.Now) +" "+ stext) 
					sw.Flush() 
				End Using
				
		
		 End If
   sleep(2000)
		 
  End While
	 
 End Sub
End Module

開啟自啟動

新建一個listener.vbs文件(其中C:\listener.exe是vb編譯后的文件路徑,Run參數0表示隱藏命令行窗口):

Dim ws 
set ws = WScript.createObject("WScript.shell") 
ws.Run "C:\listener.exe", 0, TRUE

1. 運行 -> shell:startup

2. 開始菜單 -> 程序 -> 啟動

3. 運行 -> gpedit.msc

4. 啟動 -> 開機中添加listener.vbs腳本

運行

重啟電腦后我們可以再任務管理器中看到運行的腳本

然后查看日志文件C:\log.txt

需要關閉結束進程即可

以上就是如何使用vb 監(jiān)控電腦活動記錄的詳細內容,更多關于vb 監(jiān)控電腦活動記錄的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • vbs定期監(jiān)控 值個班,定期瞄一下
  • 磁盤IO利用率監(jiān)控VBS腳本(windows)
  • VBScript 監(jiān)控并結束指定進程的代碼
  • VBScript 監(jiān)控磁盤更改事件實現代碼
  • VBS監(jiān)控CPU的使用率(如占用率一直維持在80%超過30秒則運行某程序)
  • 網絡接口利用率監(jiān)控VBS腳本代碼(Windows)
  • 進程監(jiān)控實現代碼[vbs+bat]
  • 用VBS調用程序并對程序的運行情況進行監(jiān)控的兩個代碼

標簽:紅河 河南 樂山 滄州 沈陽 新疆 上海 長治

巨人網絡通訊聲明:本文標題《如何使用vb 監(jiān)控電腦活動記錄》,本文關鍵詞  ;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 上一篇:如何用VBS腳本收集遠程計算機或本地計算機安裝的軟件

    下一篇:VBA中的Timer函數用法

    收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    淮北市| 寿光市| 郁南县| 砚山县| 棋牌| 波密县| 苗栗市| 怀宁县| 迁西县| 广昌县| 乐都县| 福贡县| 承德县| 新竹市| 榆中县| 葵青区| 红安县| 许昌市| 原阳县| 余姚市| 台中县| 汽车| 龙门县| 大英县| 探索| 浑源县| 武宣县| 江门市| 济源市| 周至县| 利津县| 丰宁| 抚顺市| 宁陕县| 凉山| 芜湖县| 白水县| 秦皇岛市| 金寨县| 娄烦县| 五常市|