经典VB.NET编程之禁止网上下载文件案例

开发 后端
利用VB.NET编写一个小程序,通过修改注册表中的某些项目,完全禁止IE浏览器的下载功能,而且屏蔽一切修改注册表的方法。

经常上网吧的朋友知道,有的网吧不可以下载东西,我们现在就利用VB.NET编程还实现这一功能。但只要稍懂一点计算机的人就可以再进入IE设置中修改为允许下载。本人经过研究注册表,找到了一种可禁止下载的方法,就是利用VB.NET编写一个小程序,通过修改注册表中的某些项目,完全禁止IE浏览器的下载功能,而且屏蔽一切修改注册表的方法。

一、VB.NET编程启动VB6.0,新建一工程,命名为DENYDOWN;

二、VB.NET编程修改注册表有两种方法:一种是建立一个扩展名为.REG的文件,双击后自动添加到注册表中(在程序中是通过WINDOWS自带的一个注册表编辑文REGEDIT.EXE把它导入注册表,达到修改注册表的目的);另一种是通过调用WINDOWS API函数,来修改注册表。两种方法各有长短,我们这里把二者结合起来,共同使用,达到对注册表的修改目的。由于我们要调用WINDOWS API函数,所以先在声明栏中声明如下的四个API函数:打开子键RegOpenKey、删除子键RegDeleteKey、关闭打开的子键RegCloseKey和刷新子键函数RegFlushKey,还有一个常数声明:HKEY_LOCAL_MACHINE,声明语名如下:

  1. Private Declare Function RegDeleteKey Lib "advapi32.dll" Alias _ "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long  
  2. Private Declare Function RegOpenKey Lib "advapi32.dll" Alias _ "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As_ Long  
  3. Private Const HKEY_LOCAL_MACHINE = &H80000002  
  4. Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As_ Long  
  5. Private Declare Function RegFlushKey Lib "advapi32.dll" (ByVal hKey As Long) As_ Long  

三、VB.NET编程在Form_Load事件过程中输入以下内容,为了后面说明方便,这里给每一行加了标号,当然实际编程中是不能加标号的。

为了让本程序在每次修改完注册表后能自动关闭,还要加入下面的退出程序。

  1. Private Sub Form_GotFocus()  
  2. Unload Me  
  3. End Sub 

生成DenyDown.exe,拷贝到C:\PROGRAM FILES\DenyDownLoad\,就一切OK了。当然还需要一个恢复修改的程序,否则连我们自已也不能下载文件和修改注册表了,通过上面的程序,相信你应该可以编写一个恢复修改的程序了吧,这里我就不再赘述了。

【编辑推荐】

  1. VB.NET重命名批量修改大揭秘
  2. 程序员必看VB.NET CASE语句拓展篇
  3. 深入介绍VB.NET类库 SmartRWLocker技巧
  4. VB.NET复制读取音频文件到剪贴板小技巧
  5. 深入概括VB.NET运行环境
责任编辑:田树 来源: 博客
相关推荐

2009-10-23 15:35:42

VB.NET实用教程

2009-10-28 16:10:16

VB.NET程序

2009-10-29 14:02:24

VB和VB.NET比较

2009-11-02 10:53:34

VB.NET INI文

2009-10-26 14:36:33

VB.NET数据自增

2009-11-10 14:30:33

VB.NET多窗体

2009-10-28 11:27:34

VB.NET资源文件

2009-10-29 16:46:32

VB.NET语言

2009-10-23 17:03:18

VB.NET事件编程

2009-10-29 14:50:22

VB.NET扩展名分组

2009-11-03 13:16:58

VB.NET读取文件

2009-10-27 10:58:00

VB.NET文件名排序

2009-11-02 15:16:07

VB.NET编程

2009-10-27 13:05:37

VB.NET对象列表

2010-01-14 17:11:17

VB.NET枚举

2009-11-02 15:08:58

VB.NET Obje

2009-10-14 15:34:29

VB.NET窗体编程模

2009-11-10 13:08:13

VB.NET编程技巧

2009-10-23 16:00:50

VB.NET实例教程

2009-11-03 10:18:46

VB.NET继承
点赞
收藏

51CTO技术栈公众号