今天化妝
編程環境vb 6.0
將以下代碼復制到壹個文本文件中,並將該文本文件重命名為(File Searcher (API))。vbp)。
Type=Exe
reference = * \ G { 00020430-0000-0000-C000-00000000046 } # 2.0 # 0 #..\..\..\..\..\ WINDOWS \ system32 \ stdole 2 . TLB # OLE自動化
object = { eab 22 AC 0-30c 1-11CF-A7EB-0000 c 05 bae0b } # 1.1 # 0;shdocvw.dll
reference = * \ G { 420 b 2830-e 718-1CF-893d-00a0c 9054228 } # 1.0 # 0 #..\..\..\..\..\ WINDOWS \ system32 \ scrrun . dll # Microsoft腳本運行時
object = { 831 FDD 16-0C5C-11 D2-A9FC-0000 f 8754 da 1 } # 2.0 # 0;mscomctl.ocx
Form=文件搜索器(API)。frm
Startup="Form1 "
幫助文件= " "
ExeName32="FileSearch.exe "
Command32= " "
Name= "Project 1 "
HelpContextID="0 "
CompatibleMode="0 "
MajorVer=1
MinorVer = 0
RevisionVer=0
AutoIncrementVer=0
ServerSupportFiles=0
版本公司名稱= "史明"
編譯類型=0
OptimizationType=0
FavorPentiumPro(tm)=0
CodeViewDebugInfo=0
NoAliasing=0
BoundsCheck=0
溢出檢查=0
FlPointCheck=0
FDIVCheck=0
UnroundedFP = 0
StartMode=0
無人值守=0
保留=0
ThreadPerObject=0
MaxNumberOfThreads=1
[MS交易服務器]
自動刷新=1
將以下代碼復制到壹個文本文件中,並將該文本文件重命名為(文件搜索器(API))。frm)。
版本5.00
object = " { 831 FDD 16-0C5C-11 D2-A9FC-0000 f 8754 da 1 } # 2.0 # 0 ";" mscomctl.ocx "
開始VB。表單表單1
Caption = "Form1 "
客戶端高度= 5640
客戶端左側= 60
ClientTop = 345
ClientWidth = 7995
LinkTopic = "Form1 "
比例高度= 5640
縮放寬度= 7995
StartUpPosition = 3 '窗口默認值
開始VB。命令按鈕命令5
Caption = "刪除"
身高= 330
左= 6360
TabIndex = 12
Top = 0
寬度= 1050
結束
開始VB。命令按鈕命令4
Caption = "退出"
身高= 330
左= 6360
TabIndex = 11
Top = 480
寬度= 1050
結束
開始VB。圖片框圖片1
背景色= & ampH00FFFFFF & amp
身高= 2985
向左= 45度
ScaleHeight = 2925
縮放寬度= 2745
TabIndex = 9
Top = 2340
寬度= 2805
開始VB。圖像Image1
身高= 2850
向左= 45度
頂部= 45
Visible = 0 '假
寬度= 2670
結束
開始VB。標簽Label1
背景色= & ampH00FFFFFF & amp
Caption = "預覽區域"
BeginProperty字體
Name = "ì"
Size = 14.25
Charset = 134
重量= 700
下劃線= 0 '假
斜體= 0 '假
刪除線= 0 'False
結束屬性
身高= 330
左= 720°
TabIndex = 10
Top = 1035
寬度= 915
結束
結束
開始VB。框架框架3
Caption = "搜索類型/文件"
高度= 1320
向左= 45度
TabIndex = 5
Top = 945
寬度= 2805
開始VB。命令按鈕命令3
Caption = "停止"
Enabled = 0 '假
身高= 285
左= 1800
TabIndex = 8
Top = 810
寬度= 825
結束
開始VB。命令按鈕命令2
Caption = "搜索"
身高= 285
Left = 810
TabIndex = 7
Top = 810
寬度= 825
結束
開始VB。組合框Combo2
高度= 300
左= 180
TabIndex = 6
Text = "Combo2 "
Top = 315
寬度= 1815
結束
結束
開始MSComctlLib。狀態欄狀態欄1
Align = 2 '底部對齊
身高= 285
左= 0
TabIndex = 4
Top = 5355
寬度= 7995
_ExtentX = 14102
_ExtentY = 503
_Version = 393216
BeginProperty面板{ 8e 3867 a5-8586-11d 1-b 16A-00c 0f 0283628 }
數字面板= 2
begin property panel 1 { 8e 3867 ab-8586-11d 1-b 16A-00c 0f 0283628 }
結束屬性
begin屬性面板2 { 8e 3867 ab-8586-11d 1-b 16A-00c 0f 0283628 }
AutoSize = 1
對象。寬度= 11007
結束屬性
結束屬性
結束
開始MSComctlLib。ListView列表視圖1
身高= 4470
左= 2925
TabIndex = 3
Top = 855
寬度= 5010
_ExtentX = 8837
_ExtentY = 7885
MultiSelect = -1 'True
LabelWrap = -1 'True
HideSelection = -1 'True
_Version = 393217
ForeColor = -2147483640
BackColor = -2147483643
BorderStyle = 1
外觀= 1
NumItems = 0
結束
開始VB。框架Frame1
Caption = "搜索路徑"
身高= 690
向左= 45度
TabIndex = 0
頂部= 90
寬度= 5685
開始VB。命令按鈕命令1
Caption = "瀏覽"
身高= 285
左= 4365
TabIndex = 2
Top = 270
寬度= 825
結束
開始VB。文本框文本1
身高= 285
左= 180
TabIndex = 1
Text = "C:\ "
Top = 270
寬度= 3795
結束
結束
開始VB。菜單彈出菜單
Caption = "popMenu "
Visible = 0 '假
開始VB。菜單mnuCopy
Caption = "復制到..."
結束
開始VB。菜單菜單列表
Caption = "全選"
結束
開始VB。菜單菜單選擇
Caption = "反向選擇"
結束
開始VB。菜單mnuSelectNone
Caption = "取消選擇"
結束
開始VB。菜單mm
標題= "-"
結束
開始VB。菜單mnuDel
Caption = "刪除"
結束
開始VB。菜單名稱
Caption = "重命名"
結束
開始VB。菜單菜單
Caption = "屬性"
結束
結束
結束
屬性VB_Name = "Form1 "
屬性VB_GlobalNameSpace = False
屬性VB_Creatable = False
屬性VB_PredeclaredId = True
屬性VB_Exposed = False
私有聲明函數SHGetPathFromIDList Lib " shell 32 . dll "別名" SHGetPathFromIDListA "(ByVal pidl為Long,ByVal pszPath為String)為Long
私有聲明函數SHBrowseForFolder Lib " shell 32 . dll "別名" SHBrowseForFolderA "(lpBrowseInfo As BROWSEINFO)為Long
私有類型BROWSEINFO用於選擇目錄對話框的結構。
然而只要
pidlRoot壹樣長
字符串形式的pszDisplayName
字符串形式的lpszTitle
ulFlags壹樣長
lpfn壹樣長
lParam壹樣長
圖像壹樣長
結束類型
私人常數BIF _ RETURNONLYFSDIRS = & amp;H1 '需要檢查該常量的值。
二等兵林德斯·朗
Boolean形式的私有Pflag
當顯示文件屬性對話框時,使用下列語句。
私有類型SHELLEXECUTEINFO
cbSize壹樣長
fMask壹樣長
hwnd壹樣長
lpVerb作為字符串
字符串形式的lpFile
lpParameters作為字符串
字符串形式的lpDirectory
多久了
欣斯塔普壹樣長
可選字段
lpIDList As Long
lpClass作為字符串
hkeyClass壹樣長
dwHotKey為Long
hIcon壹樣長
hProcess壹樣長
結束類型
私有常量SEE _ MASK _ INVOKEIDLIST = & ampHC
私有常量SEE _ MASK _ NOCLOSEPROCESS = & ampH40
私有常量SEE _ MASK _ FLAG _ NO _ UI = & ampH400
私有SEI As SHELLEXECUTEINFO
私有聲明函數ShellExecuteEX Lib "Shell32.dll "別名" ShellExecuteEX "(SEI As SHELLEXECUTEINFO)為Long
下面是使用API查找文件的語句。
私有聲明函數FindFirstFile Lib "kernel32 "別名" findfirst filea "(ByVal LP filename為字符串,lpFindFileData為WIN32_FIND_DATA)為Long
私有聲明函數FindNextFile Lib "kernel32 "別名" FindNextFileA" (ByVal hFindFile為Long,lpFindFileData為WIN32_FIND_DATA)為Long
私有聲明函數FindClose Lib " kernel 32 "(ByVal hFindFile壹樣長)壹樣長
私有常量文件屬性目錄= & ampH10
私有常量MAX_PATH = 260
私有類型文件時間
長型dwLowDateTime
長型dwHighDateTime
結束類型
私有類型WIN32_FIND_DATA
長型dwFileAttributes
ftCreationTime作為文件時間
ftLastAccessTime作為FILETIME
ftLastWriteTime作為FILETIME
nFileSizeHigh As Long
nFileSizeLow只要
dwReserved0壹樣長
dwReserved1壹樣長
字符串形式的cFileName * MAX _ PATH
c替換為String * 14
結束類型
私有子命令1_Click()
Dim bi As BROWSEINFO
Dim rtn為字符串,pidl為字符串,path為字符串
變長位置
bi.hOwer = Me
Bi.lpszTitle = "請選擇目錄"'選擇目錄'對話框
bi . ul flags = BIF _ RETURNONLYFSDIRS
pidl = SHBrowseForFolder(bi)
路徑=空格(512)
SHGetPathFromIDList pidl,路徑
pos = InStr(path,Chr(0))
rtn =左(路徑,位置1)
如果rtn = " "則退出Sub
Text1。Text = rtn
末端接頭
私有子命令2_Click()
Dim fso作為新的文件系統對象
出錯時繼續下壹步
Pflag = False
命令3。啟用=真
列表視圖1。列表項。清除
lindex = 1
命令2。啟用=假
屏幕。MousePointer =沙漏
狀態欄1.panels (1)。text = "請稍等..."
' Findfile trim (text1.text),trim (combo2.text)'調用搜索過程。
命令2。啟用=真
命令3。啟用=假
屏幕。鼠標指針= 0
Statusbar1.panels (2)。text = " * * * Yes " &;列表視圖1。計數& amp"文件"
Statusbar1。面板(1)。Text = "就緒"
末端接頭
私有子FindFile(sPath為字符串,sFile為字符串)
Dim xf作為WIN32_FIND_DATA
Dim ff As WIN32_FIND_DATA
Dim findhandle壹樣長
Dim lFindFile壹樣長
將Dstr顯示為字符串
Dim fso作為新的文件系統對象
將f標註為文件
將cPath標註為字符串
出錯時繼續下壹步
cPath = IIf(Len(sPath)>3、斯帕斯& amp" \ ",sPath)
lFindFile = findfirst file(cPath & amp;sFile,ff)
Statusbar1.panels (2)。text = " Searching " &;斯帕思
If lFindFile & gt那麽0
做
設置f = fso。GetFile(cPath & amp;ff.cFileName)
列表視圖1。列表項。添加lindex,,f.Name
列表視圖1。列表項(lindex)。子項(1) = f.ParentFolder
列表視圖1。列表項(lindex)。子項(2)= IIf(f . Size & lt;1024,格式(f.Size," #####字節"),格式(f.Size \ 1024," ###### KB "))
列表視圖1。列表項(lindex)。子項(3) = f .類型
列表視圖1。列表項(lindex)。子項(4) = Left(f.DateLastModified,Len(CStr(f . DateLastModified))-3)
lindex = lindex + 1
循環直到(FindNextFile(lFindFile,ff) = 0)
FindClose lFindFile
如果Pflag,則退出Sub
如果…就會結束
find handle = findfirst file(cPath & amp;"*.*,xf)
多項活動
不要註意這是不是壹個目錄。
If (xf.dwFileAttributes和FILE_ATTRIBUTE_DIRECTORY)然後
if Asc(xf . cfilename)& lt;& gtAsc(" . ")然後
Dstr = cPath + Left(xf.cFileName,InStr(xf.cFileName,Chr(0)) - 1)
查找文件Dstr,sFile
如果…就會結束
如果…就會結束
如果Pflag則
FindClose findhandle
出口接頭
如果…就會結束
循環直到(FindNextFile(findhandle,xf) = 0)
FindClose findhandle
末端接頭
私有子命令3_Click()
Pflag =真
末端接頭
私有子命令4_Click()
結束
末端接頭
私有子命令5_Click()
將I標註為整數
i = ListView1。列表項。計數
當我& gt0
殺死ListView1。列表項(壹)。子項(1)和" \ " & amp列表視圖1。列表項(壹)
i = i - 1
環
“MsgBox”文件已全部刪除!~"
末端接頭
私有子窗體_Load()
列表視圖1。View = lvwReport
listview 1 . column headers . add,"文件名"
listview 1 . column headers . add," folder "
listview 1 . column headers . add," Size "
listview 1 . column headers . add," type "
listview 1 . column headers . add,"修改日期"
列表視圖1。ColumnHeaders(2)。寬度= 3200
組合2。AddItem "*.mp3 "
組合2。AddItem "*。wav "
組合2。AddItem "*。中"
組合2。AddItem "*。gif "
組合2。AddItem "*。avi "
組合2。AddItem "*。rm "
組合2。AddItem "*。主權財富基金"
組合2。AddItem "*。jpg "
組合2。AddItem "*。cur "
組合2。AddItem "*。ico "
組合2。文本= " "
組合2。ListIndex = 0
末端接頭
private Sub listview 1 _ Item click(ByVal Item As MSComctlLib。ListItem)
將Fpath標註為字符串
出錯時繼續下壹步
Image1。拉伸=假
Image1。圖片= load picture(GPath(listview 1。SelectedItem . Index)& amp;列表視圖1。選擇編輯項目.文本)
如果Image1。圖片& lt& gt那麽0
Label1。可見=假
如果Image1。寬度& gt圖片1。那麽比例寬度
Image1。拉伸=真
Image1。寬度=圖片1。刻度寬度
Image1。左= 0
其他
Image1。Left = (Picture1。ScaleWidth - Image1寬度)/ 2
如果…就會結束
如果Image1。高度& gt圖片1。那麽高度
Image1。拉伸=真
Image1。高度= Picture1。比例尺高度
Image1。Top = 0
其他
Image1。Top = (Picture1。ScaleHeight - Image1高度)/ 2
如果…就會結束
Image1。可見=真
如果…就會結束
末端接頭
private Sub listview 1 _ MouseDown(Button為整數,Shift為整數,x為Single,y為Single)
如果Button = 2,則
PopupMenu彈出菜單
如果…就會結束
末端接頭
Private Sub mnuAttr_Click()'顯示文件屬性對話框。
出錯時繼續下壹步
使用SEI
。cbSize = Len(SEI)
。fMask = SEE_MASK_NOCLOSEPROCESS或SEE_MASK_INVOKEIDLIST或SEE_MASK_FLAG_NO_UI
。hwnd = Form1.hwnd
。lpVerb = "屬性"
。lpFile = GPath(ListView1。SelectedItem . Index)& amp;列表視圖1。選擇編輯項目.文本
。lpDirectory = vbNullChar
。lpParameters = vbNullChar
。nShow = 0
。hInstApp = 0
。lpIDList = 0
。lpClass = vbNullChar
。hkeyClass = 0
。dwHotKey = 0
。hProcess = 0
。hIcon = 0
以…結尾
ShellExecuteEX SEI
末端接頭
私有Sub mnuCopy_Click()
Dim bi As BROWSEINFO
Dim rtn為字符串,pidl為字符串,path為字符串
變長位置
Dim fso作為新的文件系統對象
暗淡我壹樣長
bi.hOwer = Me
Bi.lpszTitle = "請選擇壹個目標文件夾"
bi . ul flags = BIF _ RETURNONLYFSDIRS
pidl = SHBrowseForFolder(bi)
路徑=空格(512)
SHGetPathFromIDList pidl,路徑
pos = InStr(path,Chr(0))
rtn =左(路徑,位置1)
如果rtn = " "則退出Sub
如果正確(rtn,1)& lt;& gt“那麽rtn = rtn & amp"\"
對於i = 1到ListView1。列表項。計數
如果ListView1。列表項(壹)。然後選擇
fso。復制文件GPath(i)和amp列表視圖1。列表項(壹)。文本,rtn,真
如果…就會結束
接下來我
末端接頭
私有函數GPath(i為Long)
GPath = IIf(Len(ListView1。列表項(壹)。子項(1))& gt;3,ListView1。列表項(壹)。子項(1)和" \ ",ListView1。SelectedItem.SubItems(1))
結束功能
Private Sub mnuDel_Click()
Dim fso作為新的文件系統對象
暗淡我壹樣長
Dim列表計數壹樣長
對於i = 1到ListView1。列表項。計數
如果ListView1。列表項(壹)。然後選擇
fso。刪除文件GPath(i)和amp列表視圖1。列表項(壹)。文本
如果…就會結束
接下來我
listCount = ListView1。列表項。計數
列表計數時執行& gt0
如果ListView1。ListItems(listCount)。然後選擇
列表視圖1。列表項。刪除列表計數
如果…就會結束
listCount = listCount - 1
環
末端接頭
私有Sub mnuRename_Click()
將tmp標註為字符串
Tmp = InputBox("將文件名改為","重命名文件",listview 1 . selecteditem . text)。
出錯時轉到錯誤
名稱GPath(ListView1。SelectedItem . Index)& amp;列表視圖1。SelectedItem.Text作為GPath(ListView1。SelectedItem . Index)& amp;終端監督程式(Terminal Monitor Program的縮寫)
列表視圖1。SelectedItem.Text = tmp
錯誤:
末端接頭
私有Sub mnuRevSelect_Click()
暗淡我壹樣長
對於i = 1到ListView1。列表項。計數
列表視圖1。列表項(壹)。Selected =不是ListView1。列表項(壹)。挑選
然後
末端接頭
私有Sub mnuSelectAll_Click()
暗淡我壹樣長
對於i = 1到ListView1。列表項。計數
列表視圖1。列表項(壹)。選定=真
接下來我
末端接頭
私有Sub mnuSelectNone_Click()
暗淡我壹樣長
對於i = 1到ListView1。列表項。計數
列表視圖1。列表項(壹)。選定=假
然後
末端接頭