吾爱看雪 发表于 2018-8-16 20:03

VB制作AutoRun.inf免疫器

本帖最后由 吾爱看雪 于 2018-8-17 20:50 编辑

VB入门必看
VB制作AutoRun.inf免疫器

免疫按钮

Private Sub Command1_Click()

Text1.Text = " "

Shell "cmd.exe /c md " & Mid(Drive1.Drive, 1, 2) & "\Autorun.inf", vbHide
Shell "cmd.exe /c md " & Mid(Drive1.Drive, 1, 2) & "\Autorun.inf\xc..\", vbHide
End Sub


“xc..\”

取消免疫按钮
Private Sub Command2_Click()
Text1.Text = " "

Shell "cmd.exe /c rd " & Mid(Drive1.Drive, 1, 2) & "\Autorun.inf\xc..\", vbHide
Shell "cmd.exe /c rd " & Mid(Drive1.Drive, 1, 2) & "\Autorun.inf", vbHide
End Sub

退出按钮

Private Sub Command3_Click()
End
End Sub


检查按钮:

Private Sub Command4_Click()

On Error Resume Next

Dim fso, path

Set fso = CreateObject("scripting.filesystemobject")


Dim A
A = 67
For i = 1 To 24
path = Chr(A) & ":\Autorun.inf\xc..\"=c:\Autorun.inf\xc..\

If Not fso.FolderExists(path) Then

Text1 = Text1 + vbCrLf + Chr(A) & ":" + "没有免疫"

Else

Text1 = Text1 + vbCrLf + Chr(A) & ":" + "已经免疫"
End If

A = A + 1

Next i

End Sub


Private Sub Command5_Click()
MsgBox "免疫"
End Sub

“Set fso = CreateObject("scripting.filesystemobject"),作用是创建一个“scripting.filesystemobject”对象,VB中创建语法“Set 变量 = CreateObject("对象名")”,创建了“fso”后就可以使用FOS对象方法。下面来说一下FSO:FSO(File System Object)对象是VB6新增的对象。  Fso对象模型包括下表这些对象,它主要对文件系统进行操作(取驱动器信息;取文件、文件夹信息;文件移动、拷贝、删除;文件夹移动、拷贝、删除等等),大大方便我们编程。
对象描述
Drive允许收集关于系统所用的驱动器的信息,诸如驱动器有多少可用空间,其共享名称是什么,等等。请注意,一个“驱动器”并不一定是一个硬盘。它可以是CD-ROM驱动器、一个RAM盘等等。而且,驱动器不一定是和系统物理地连接;也可以通过一个LAN进行逻辑地连接。Folder允许创建、删除或移动文件夹,并向系统查询文件夹的名称、路径等。Files允许创建、删除或移动文件,并向系统查询文件的名称、路径等。FileSystemObject该组的主要对象,提供一整套用于创建、删除、收集相关信息、以及通常的操作驱动器、文件夹和文件的方法。与本对象相关联的很多方法复制了其它对象中的方法。TextStream允许您读和写文本文件。FSO对象模型包含在一个称为Scripting的类型库中,此类型库位于Scrrun.Dll文件中。使用前必需将其引用到工程中。请从“工程”菜单的“引用”对话框选择“MicrosoftScriptingRuntime”项。这样就可在工程里使用FSO对象模型中包含的对象。为了进一步的了解FOS对象的用法,下面将举例子进行详细的说明:首先新建一个工程,从“工程”菜单的“引用”对话框选择“Microsoft Scripting Runtime”项。在FORM1窗口加上几个控件,其属性设置见下表:

Drive对象:包含储存设备的信息,包括硬盘、光驱、ram盘、网络驱动器
Drives集合:提供一个物理和逻辑驱动器的列表
File对象:检查和处理文件
Files 集合:提供一个文件夹中的文件列表
Folder对象:检查和处理文件夹
Folders集合:提供文件夹中子文件夹的列表
Textstream对象:读写文本文件

FSO的常见方法有:

BulidPath:把文件路径信息添加到现有的文件路径上
CopyFile:复制文件
CopyFolder:复制文件夹
CreateFolder:创建文件夹
CreateTextFile:创建文本并返回一个TextStream对象
DeleteFile:删除文件
DeleteFolder:删除文件夹及其中所有内容
DriveExits:确定驱动器是否存在
FileExits:确定一个文件是否存在
FolderExists:确定某文件夹是否存在
GetAbsolutePathName:返回一个文件夹或文件的绝对路径
GetBaseName:返回一个文件或文件夹的基本路径
GetDrive:返回一个dreve对象
GetDriveName:返回一个驱动器的名字
GetExtensionName:返回扩展名
GetFile:返回一个file对象
GetFileName:返回文件夹中文件名称
GetFolder:返回一个文件夹对象
GetParentFolderName:返回一个文件夹的父文件夹
GetSpecialFolder:返回指向一个特殊文件夹的对象指针
GetTempName:返回一个可以被createtextfile使用的随机产生的文件或文件夹的名称
MoveFile:移动文件
MoveFolder:移动文件夹

Shell 函数


执行一个可执行文件,返回一个 Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。

语法

Shell(pathname[,windowstyle])

Shell 函数的语法含有下面这些命名参数:

部分 描述
pathname 必要参数。Variant (String),要执行的程序名,以及任何必需的参数或命令行变量,可能还包括目录或文件夹,以及驱动器。
Windowstyle 可选参数。Variant (Integer),表示在程序运行时窗口的样式。如果 windowstyle 省略,则程序是以具有焦点的最小化窗口来执行的。


windowstyle 命名参数有以下这些值:

常量 值 描述
vbHide 0 窗口被隐藏,且焦点会移到隐式窗口。
VbNormalFocus 1 窗口具有焦点,且会还原到它原来的大小和位置。
VbMinimizedFocus 2 窗口会以一个具有焦点的图标来显示。
VbMaximizedFocus 3 窗口是一个具有焦点的最大化窗口。
VbNormalNoFocus 4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
VbMinimizedNoFocus 6 窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。


源码传送门:


zeng110114 发表于 2018-8-16 20:17

感谢。辛苦了

oneradish 发表于 2018-8-16 21:14

最近在学vb,谢谢了

linuxprobe 发表于 2018-8-16 21:35

VB是什么软件?能详细介绍吗?

ywlyshlh 发表于 2018-8-16 22:14

好巧。。。。。我搞了mfc c++版的

ywlyshlh 发表于 2018-8-16 22:15

创建删除文件的api允许...实际视窗操作不允许

sezheng 发表于 2018-8-17 10:17

又想起学vb的时候了
页: [1]
查看完整版本: VB制作AutoRun.inf免疫器