999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

青少年健康上網(wǎng)軟件的設(shè)計與實現(xiàn)

2011-10-25 10:17:56田敬軍
唐山師范學(xué)院學(xué)報 2011年2期
關(guān)鍵詞:程序設(shè)置游戲

田敬軍

(唐山師范學(xué)院 計算機科學(xué)系,河北 唐山 063000)

網(wǎng)絡(luò)在給人們傳遞著各種各樣信息的同時也帶來了一些不良的元素,許多不益于青少年健康成長的內(nèi)容層出不窮,這樣就需要一款使得青少年能夠健康上網(wǎng)的系統(tǒng)軟件,把所有成人、暴力、顛覆政府等不健康或是有害的網(wǎng)址都屏蔽掉,如果使用者輸入非法或不良的網(wǎng)址,將打不開網(wǎng)站頁面;而且除非輸入授權(quán)人的密碼,用戶無法退出這個監(jiān)視系統(tǒng),這樣可以避免青少年未經(jīng)允許自行退出程序。

1 系統(tǒng)功能模塊

健康上網(wǎng)系統(tǒng)需要實現(xiàn)的功能主要有八個模塊:“上網(wǎng)限制”、“游戲限制”、“聊天限制”、“BT 限制”、“時間限制”、“健康設(shè)置”、“記錄”、“安全設(shè)置”,其中上網(wǎng)限制、時間限制和記錄是整個系統(tǒng)的核心。另有“常規(guī)”、 “密碼設(shè)置”、“開始監(jiān)護”、“關(guān)于”以及“退出程序”等相關(guān)功能。

1.1 設(shè)置模塊

(1)“上網(wǎng)限制”模塊

限制瀏覽指定網(wǎng)站。在監(jiān)控狀態(tài)下就可以對限制瀏覽的網(wǎng)址進行攔截,使網(wǎng)頁顯示不能打開的狀態(tài)。這一項的實現(xiàn)主要依賴于黑名單,即把限制瀏覽的網(wǎng)址加進黑名單里。

僅允許瀏覽指定網(wǎng)站。選擇后在監(jiān)控狀態(tài)下只能打開指定的網(wǎng)站地址,而不能打開其它網(wǎng)址,這一項的實現(xiàn)主要依賴于白名單,即允許訪問的網(wǎng)址名單。用戶同樣可以自行對白名單內(nèi)的網(wǎng)址進行添加、刪除和編輯等操作。

截獲網(wǎng)址。用來記錄使用者試圖打開但最終沒有打開的網(wǎng)站地址,即受限制的網(wǎng)址。如果選擇的是“限制瀏覽指定網(wǎng)站”,若輸入存在于黑名單中的網(wǎng)址,不但不能打開,而且會記錄下該網(wǎng)址以及試圖打開的次數(shù)和最后時間。

(2)“游戲限制”模塊

在此功能模塊中,對一些常見的網(wǎng)絡(luò)游戲進行限制,如魔獸、大話西游、CS等。在進行設(shè)置時,只需要將限制玩的游戲選中,進入監(jiān)控狀態(tài)時會自動使選中的游戲不能進行,還可以自行添加限制玩的游戲。

(3)“聊天限制”模塊

在此功能模塊中,對一些常見的聊天工具進行限制,如QQ、MSN、網(wǎng)易泡泡等。

(4)“BT限制”模塊

對于常見的下載工具進行限制使用,如比特精靈、BitComet、eMule等。

(5)“時間限制”模塊

可以選擇是否啟動時間限制功能,在選擇啟動的情況下,可以添加允許上網(wǎng)的時間段。相應(yīng)的分為每天、周一到周五和周末這三種不同的時間限制,可以分別設(shè)置每種時間限制的不同時間段,然后添加到允許上網(wǎng)的時間內(nèi)。

(6)“健康設(shè)置”模塊

可以選擇是否啟動視力保護功能,在選擇啟動的情況下,可以設(shè)置多長時間將鎖住電腦幾分鐘。當(dāng)上網(wǎng)時間達到一定時間間隔時,就會鎖住電腦幾分鐘,強制性的讓使用者進行視力休息,規(guī)定的時間到后會自動解鎖。

(7)“記錄”模塊

網(wǎng)址記錄功能。記錄下使用者在上網(wǎng)期間訪問過的所有網(wǎng)址,以便發(fā)現(xiàn)有不良信息的網(wǎng)址,將其加入黑名單中,這樣下次就無法再訪問了。

屏幕記錄功能。在監(jiān)控狀態(tài)下,每隔2分鐘電腦會自動對屏幕進行抓圖,不管當(dāng)時電腦屏幕上顯示的是什么,都會毫無疏漏的記錄下來,這樣家長可以非常容易的了解到使用者所觀看的內(nèi)容,如果有不利于青少年身心發(fā)展的內(nèi)容信息,家長都可以立刻就了解到,如果家長在其中發(fā)現(xiàn)了孩子的某些興趣所在,還可以因材施教因勢利導(dǎo),根據(jù)孩子的興趣愛好對其進行定向培養(yǎng)。

(8)安全設(shè)置

在該模塊中實現(xiàn)的主要功能是隱藏任務(wù)欄圖標,目的是為了使未成年人不易發(fā)現(xiàn)自己是出于監(jiān)護的狀態(tài),同時防止他們自行刪除退出程序。如果選擇隱藏任務(wù)欄圖標,則必須通過預(yù)先設(shè)定的熱鍵來激活登錄管理員窗口。

1.2 其他功能模塊

(1)開始監(jiān)護

選擇此項后,軟件會首先調(diào)用系統(tǒng)時間和數(shù)據(jù)庫中提前設(shè)置的允許上網(wǎng)時間段,如果當(dāng)前時間屬于允許上網(wǎng)時間,則可以正常使用電腦,如果當(dāng)前時間不在允許的時間段內(nèi),則立刻鎖住電腦屏幕,在此狀態(tài)下,可以切換到管理員狀態(tài),需要輸入密碼進行轉(zhuǎn)換。

(2)“密碼設(shè)置”模塊

在該項功能中,提供了對密碼的修改,用戶可以自行修改軟件的密碼。只要孩子不知道密碼,就無法對系統(tǒng)進行刪除、卸載、退出等操作,以及擺脫受監(jiān)控保護的狀態(tài)。

2 系統(tǒng)中的關(guān)鍵技術(shù)

2.1 開機自動啟動

在電腦的注冊表中的根鍵 HKEY_LOCAL_MACHINE目錄下,有一個鍵

"Run"(SoftwareWindowsCurrentVersionRun),

Windows開機時會自動搜索注冊表,凡在該鍵下設(shè)置了正確路徑的有效程序就會自動運行,所以本系統(tǒng)的開機自動啟動的實現(xiàn)原理還是比較簡單的,就是把軟件的正確路徑放置在注冊表的該鍵目錄下。首先在delphi的type類型聲明中定義類型為TEdit的 Edit1和 Edit2,分別用來記錄要添加的數(shù)值名稱和數(shù)值數(shù)據(jù)(即自啟動程序的路徑),然后在變量定義中定義一個TRegistry類型的變量Reg,之后在代碼的主體部分就可以使用變量Reg來進行創(chuàng)建新鍵等操作。主要實現(xiàn)代碼為:

Reg:=TRegistry.Create; //創(chuàng)建一個新鍵

Reg.RootKey:=HKEY_LOCAL_MACHINE; //將根鍵設(shè)置為HKEY_LOCAL_MACHINE

Reg.OpenKey('SOFTWAREMicrosoftwindowsCurrentVer sionRun',true); //打開一個鍵

Reg.WriteString(Edit1.Text,Edit2.Text); //在 Reg這個鍵中寫入數(shù)據(jù)名稱和數(shù)據(jù)數(shù)值

Reg.CloseKey; //關(guān)閉鍵

2.2 隱藏進程

隱藏進程也就是按下Ctrl+Alt+Del鍵時使程序不出現(xiàn)在任務(wù)管理器中,這樣就可以讓使用者不易發(fā)覺程序在運行。運行程序的隱藏可以通過 API HOOK技術(shù)來實現(xiàn)。API HOOK技術(shù)是一種用于改變 API執(zhí)行結(jié)果的技術(shù),計算機程序可以使用這個技術(shù)來達到隱藏的目的。

2.3 上網(wǎng)限制

在上網(wǎng)限制中通過編輯黑白名單來規(guī)定可以訪問或者禁止訪問的網(wǎng)址,上網(wǎng)限制的界面如圖1所示,可以分別設(shè)置黑名單及白名單。

圖1 上網(wǎng)限制設(shè)置

圖2 黑名單的編輯

(1)黑/白名單的編輯界面

如圖 2所示,若要將某一網(wǎng)址加進黑/白名單,可在文本框內(nèi)輸入網(wǎng)址,如http://baidu.com,可以只輸入簡潔網(wǎng)址baidu.com,也可以全部輸入,在點擊“添加”之后,都會自動轉(zhuǎn)化成簡潔的網(wǎng)址形式。可以通過“編輯”和“刪除”來對已有的黑/白網(wǎng)址進行修改或刪除。

(2)黑名單的實現(xiàn)

首先把需要屏蔽的網(wǎng)址寫在INI文件中,格式如下:

a1=xxxx

...

然后用 OnBeforeNavigate過程檢測打開的網(wǎng)址是不是存在于INI文件中,不是則打開這個鏈接,是就不打開此鏈接。主體代碼為:

while (i

begin

acd:=vValues.Values[vValues.Names[I]];

end;

case AnsiContainsText(url,acd) of//檢查URL是否是INI文件中的。

True: Cancel:=true;

False: Cancel:=False;

end;

為了提高系統(tǒng)的可移植性,可以同時將包括黑名單在內(nèi)的相關(guān)數(shù)據(jù)寫入了注冊表,在注冊表內(nèi)的位置為

HKEY_LOCAL_MACHINE/SOFTWAER/NMUI,其中NMUI是軟件的名字。

2.4 游戲限制

在該模塊中,可以對一些常見的網(wǎng)絡(luò)游戲進行限制使用。如圖3,可以選擇一個或多個想要禁止的游戲,還可以添加刪除某些游戲。在監(jiān)護狀態(tài)下,如果啟動被禁止的游戲,會顯示“該程序已被禁止”字樣,游戲程序也不運行。

圖3 游戲限制

在程序的單元可見部分(interface)的函數(shù)聲明function里,首先定義一個名為KillTask類型為boolean的函數(shù),其參數(shù)為 ExeFileName:string,如要禁止運行某個游戲的可執(zhí)行程序,文件名可為:*.exe。函數(shù)的參數(shù)取決于用戶的選擇,用戶挑選好要禁止的程序后所有的數(shù)據(jù)都會存儲在數(shù)據(jù)庫的程序名單列表里,軟件運行時,與數(shù)據(jù)庫中數(shù)據(jù)進行逐行比較,若遇到相符的數(shù)據(jù),則返回參數(shù),此時可以繼續(xù)進行下面的編碼。

...

FSnapshotHandle :=

CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);

FProcessEntry32.dwSize := SizeOf(FProcessEntry32);

ContinueLoop := Process32First(FSnapshotHandle,

FProcessEntry32);

while Integer(ContinueLoop) <> 0 do

begin

if ((UpperCase(ExtractFileName

(FProcessEntry32.szExeFile))

= UpperCase(ExeFileName)) or

(UpperCase(FProcessEntry32.szExeFile)

= UpperCase(ExeFileName))) then

Result:=Integer(TerminateProcess(OpenProcess(PROCES S_TERMINATE,BOOL(0),FProcessEntry32.th32ProcessID),0));

ContinueLoop :=

Process32Next(FSnapshotHandle,FProcessEntry32);

…..

2.5 時間限制

可以設(shè)置每天或者周一到周五或者周末的允許上網(wǎng)時間段,如下圖4示。

圖4 時間限制

在選擇“啟用時間限制功能”后,如果處于監(jiān)護狀態(tài)下,就會對系統(tǒng)時間進行檢查,如果當(dāng)前時間不屬于允許上網(wǎng)的時間,就會對電腦進行封鎖。可以看到電腦屏幕會整個變成灰暗色,中間顯示“現(xiàn)在不允許您使用電腦,本機已被鎖定。”并且可以通過輸入密碼切換到管理員狀態(tài)。

...

HWND hProgram=FindWindow("Progman",

"Program Manager");

HWND hChild=FindWindowEx(hProgram,NULL,

"SHELLDLL_DefView",NULL);

::EnableWindow(hChild,FALSE);

::EnableWindow(FindWindow("Shell_TrayWnd", NULL),false); //鎖定鍵盤

TRegistry*reg=0;

try{reg=new TRegistry();

reg->RootKey=HKEY_CURRENT_USER;

AnsiStringKeyName="Software\microsoft\windows\curr entversion\policies\system";

if(reg->OpenKey(KeyName,true))

{reg->WriteString("DisableTaskMgr","0");

reg->CloseKey();}

}catch(...){}

if(reg){delete reg; reg=NULL;} //屏蔽任務(wù)管理器(即ctrl+alt+del)

ShowWindow(FindWindow("Shell_TrayWnd",0),SW_HI DE); //隱藏開始菜單

解鎖是封鎖的逆過程,即先解鎖鍵盤,再解鎖任務(wù)管理器,最后顯示開始菜單。

健康設(shè)置,也是讀取時間,達到規(guī)定的時間時,對電腦進行封鎖,封鎖界面有自動倒計時功能,在規(guī)定的鎖住電腦時間限達到后,可以自動解鎖,繼續(xù)正常使用電腦,當(dāng)然,如果用戶不愿意等待,可以直接輸入密碼進入管理狀態(tài)。

在該模塊中也和時間限制原理一樣,即到一定時間后執(zhí)行封鎖電腦操作,和時間限制調(diào)用的是相同的函數(shù)。

2.6 記錄

在記錄中功能中,可以記錄下所有訪問過的網(wǎng)址以及屏幕抓圖記錄,上網(wǎng)限制中的“截獲網(wǎng)址”功能實際上也屬于記錄功能。屏幕記錄功能可以記錄下整個電腦畫面,每隔兩分鐘自動記錄一次并存放在文件夾ScreenLog中。可以在不啟動軟件的情況下,直接打開系統(tǒng)固有文件夾中的ScreenLogView可執(zhí)行文件查看屏幕記錄。

屏幕抓圖是利用windows的API函數(shù)CapScreen來實現(xiàn)的,可以全屏拷貝、窗體拷貝,并支持圖形存儲功能。

…..

tmpBitmap.Width:= Screen.Width;

tmpBitmap.Height:= Screen.Height; //捕獲屏幕圖像

Bitblt(tmpBitmap.Canvas.Handle,0,0,Screen.Width,Screen.Height,DeskDC,0,0,SRCCOPY);

OutBitmap;

finally

tmpBitmap.FreeImage;

tmpBitmap.Free;

iBitmapValide:=False;

ReleaseDC(DeskWnd,DeskDC);

…..

2.7 安全設(shè)置

隱藏任務(wù)欄圖標的實現(xiàn)。系統(tǒng)托盤是一個在任務(wù)欄右角的小方框,在托盤的應(yīng)用程序可以顯示小圖標。若要隱藏程序的任務(wù)欄圖標,可以應(yīng)用 ShowWindow函數(shù)并傳給它Application.Handle窗口句柄,即ShowWindow (Application->Handle, SW_HIDE);然后設(shè)置主窗口的Visible屬性為false來隱藏它,但是后來在程序測試的時候發(fā)現(xiàn)通過ShowWindow來隱藏窗口的任務(wù)欄圖標是不持久的,某些動作會使任務(wù)欄圖標重現(xiàn),后來在網(wǎng)上查閱和參考了很多資料,做了一些改動,就是將應(yīng)用程序窗口設(shè)為Tool Window來移走程序的任務(wù)欄圖標,Tool windows永遠不會有任務(wù)欄圖標。要實現(xiàn)應(yīng)用程序窗口為Tool Window,可以調(diào)用API函數(shù)GetWindowLong和 SetWindowLong來完成。

…..

var

dwExStyle : DWORD;

begin

dwExStyle:=GetWindowLong(Application.Handle,

GWL_EXSTYLE);

dwExStyle := dwExStyle +

WS_EX_TOOLWINDOW;

SetWindowLong(Application.Handle,

GWL_EXSTYLE, dwExStyle);

……

3 結(jié)束語

闡述了實現(xiàn)健康上網(wǎng)軟件的關(guān)鍵技術(shù),主要利用Delphi中的系統(tǒng)函數(shù),結(jié)合Windows API,對計算機系統(tǒng)進行控制,從而實現(xiàn)軟件的預(yù)定目標。

猜你喜歡
程序設(shè)置游戲
中隊崗位該如何設(shè)置
少先隊活動(2021年4期)2021-07-23 01:46:22
試論我國未決羈押程序的立法完善
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
數(shù)獨游戲
瘋狂的游戲
飛碟探索(2016年11期)2016-11-14 19:34:47
爆笑游戲
本刊欄目設(shè)置說明
中俄臨床醫(yī)學(xué)專業(yè)課程設(shè)置的比較與思考
創(chuàng)衛(wèi)暗訪程序有待改進
主站蜘蛛池模板: 香蕉色综合| 无码高潮喷水在线观看| 中文字幕在线日本| 国产精品开放后亚洲| 亚洲a级在线观看| 亚洲精品少妇熟女| 亚洲成aⅴ人在线观看| 无码精油按摩潮喷在线播放| a级毛片免费网站| 久久国产精品影院| 久久99国产精品成人欧美| 亚洲最新在线| 国产不卡网| 无码在线激情片| 国产黄视频网站| 久久久久无码国产精品不卡| 国产精品久久久久无码网站| 亚洲一区国色天香| 97se亚洲综合不卡| 色婷婷成人| 国产爽歪歪免费视频在线观看| 青草国产在线视频| 亚洲第一香蕉视频| 国产一级毛片在线| 国产麻豆另类AV| 91精品啪在线观看国产| 美女毛片在线| 国产亚洲日韩av在线| 国产成人盗摄精品| 亚洲制服丝袜第一页| 亚洲IV视频免费在线光看| 99视频有精品视频免费观看| 91免费精品国偷自产在线在线| 91美女在线| 亚洲第一极品精品无码| 亚洲视频二| 国产SUV精品一区二区| 成人在线观看不卡| 91福利片| 综合亚洲网| 亚洲另类色| 成人在线观看不卡| 在线无码av一区二区三区| 一级毛片在线播放| 国产精品久久久久无码网站| 欧美成人综合视频| 亚洲码一区二区三区| 国产精品视频白浆免费视频| 极品国产在线| 欧美日韩国产精品综合| 国产日本视频91| 青青操视频在线| 88国产经典欧美一区二区三区| 69国产精品视频免费| 亚洲视频一区在线| 无码视频国产精品一区二区| 中文字幕在线看视频一区二区三区| 人妖无码第一页| 国产精品吹潮在线观看中文| 真人高潮娇喘嗯啊在线观看| 国模私拍一区二区| 日韩区欧美国产区在线观看| 日韩无码黄色| 精品国产自在在线在线观看| 国产成人做受免费视频| 噜噜噜久久| 国产乱论视频| 99re在线观看视频| 91黄视频在线观看| 国产91透明丝袜美腿在线| 日韩第一页在线| 九九热在线视频| 91麻豆精品视频| 欧洲欧美人成免费全部视频| 久久人午夜亚洲精品无码区| 在线观看亚洲人成网站| 日本在线免费网站| 永久免费无码成人网站| 亚洲一区精品视频在线 | 九色最新网址| 国产在线视频导航| 凹凸国产分类在线观看|