經(jīng)典VB.NET編程之禁止網(wǎng)上下載文件案例
經(jīng)常上網(wǎng)吧的朋友知道,有的網(wǎng)吧不可以下載東西,我們現(xiàn)在就利用VB.NET編程還實現(xiàn)這一功能。但只要稍懂一點計算機(jī)的人就可以再進(jìn)入IE設(shè)置中修改為允許下載。本人經(jīng)過研究注冊表,找到了一種可禁止下載的方法,就是利用VB.NET編寫一個小程序,通過修改注冊表中的某些項目,完全禁止IE瀏覽器的下載功能,而且屏蔽一切修改注冊表的方法。
一、VB.NET編程啟動VB6.0,新建一工程,命名為DENYDOWN;
二、VB.NET編程修改注冊表有兩種方法:一種是建立一個擴(kuò)展名為.REG的文件,雙擊后自動添加到注冊表中(在程序中是通過WINDOWS自帶的一個注冊表編輯文REGEDIT.EXE把它導(dǎo)入注冊表,達(dá)到修改注冊表的目的);另一種是通過調(diào)用WINDOWS API函數(shù),來修改注冊表。兩種方法各有長短,我們這里把二者結(jié)合起來,共同使用,達(dá)到對注冊表的修改目的。由于我們要調(diào)用WINDOWS API函數(shù),所以先在聲明欄中聲明如下的四個API函數(shù):打開子鍵RegOpenKey、刪除子鍵RegDeleteKey、關(guān)閉打開的子鍵RegCloseKey和刷新子鍵函數(shù)RegFlushKey,還有一個常數(shù)聲明:HKEY_LOCAL_MACHINE,聲明語名如下:
- Private Declare Function RegDeleteKey Lib "advapi32.dll" Alias _ "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
- Private Declare Function RegOpenKey Lib "advapi32.dll" Alias _ "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As_ Long
- Private Const HKEY_LOCAL_MACHINE = &H80000002
- Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As_ Long
- Private Declare Function RegFlushKey Lib "advapi32.dll" (ByVal hKey As Long) As_ Long
三、VB.NET編程在Form_Load事件過程中輸入以下內(nèi)容,為了后面說明方便,這里給每一行加了標(biāo)號,當(dāng)然實際編程中是不能加標(biāo)號的。
為了讓本程序在每次修改完注冊表后能自動關(guān)閉,還要加入下面的退出程序。
- Private Sub Form_GotFocus()
- Unload Me
- End Sub
生成DenyDown.exe,拷貝到C:\PROGRAM FILES\DenyDownLoad\,就一切OK了。當(dāng)然還需要一個恢復(fù)修改的程序,否則連我們自已也不能下載文件和修改注冊表了,通過上面的程序,相信你應(yīng)該可以編寫一個恢復(fù)修改的程序了吧,這里我就不再贅述了。
【編輯推薦】