2024年3月28日发(作者:)

VB模拟Windows的资源回收站

您现在将屏幕上所有的视窗全部缩小,找到资源回收站,按鼠标右键,选择【属性】,

便会出现【资源回收站】的属性问话框。

其中有几个选项如下:

1、不要将文件移到资源回收站,删除时立即移除文件。

2、显示删除确认对话框?

根据以上之状况,文件之删除有三种情形:

1、删除文件,出现确认对话框,文件移到资源回收站。

2、删除文件,出现确认对话框,文件不移到资源回收站。

3、删除文件,不出现确认对话框,文件也不移到资源回收站。

模拟程序如下:

′在模组的声明区中加入以下声明:

Public Type SHFILEOPSTRUCT

hwnd As Long

wFunc As Long

pFrom As String

pTo As String

fFlags As Integer

fAnyOperationsAborted As Long

hNameMappings As Long

lpszProgressTitle As Long

End Type

Public Declare Function SHFileOperation Lib "" Alias _

"SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Public Const FO_DELETE = &H3

Public Const FOF_ALLOWUNDO = &H40 ′可以还原

Public Const FOF_NOCONFIRMATION = &H10 ′不出现确认对话框

Public Const FOF_SILENT = &H4

′在程序中之使用方法如下:

′以下之例子会出现确认对话框,文件也会移到资源回收站。

Private Sub Command1_Click()

Dim SHop As SHFILEOPSTRUCT

Dim strFile As String ′要删除的文件(含全路径)

strFile = "c:"

With SHop

.wFunc = FO_DELETE

.pFrom = strFile

.fFlags = FOF_ALLOWUNDO

End With

SHFileOperation SHop

End Sub

′若要调整,只要更改 fFlags 之值即可,如下:

.fFlags = FOF_SILENT ′删除文件,出现确认对话框,文件不移到资源回收站。

.fFlags = FOF_NOCONFIRMATION ′删除文件,不出现确认对话框,文件也不移到

资源回收站。