|
Определить, имеет ли папка подпапки |
|
|
Private Const MAX_PATH = 260
Private Type SHFILEINFO
hIcon As Long
iIcon As Long
dwAttributes As Long
szDisplayName As String * MAX_PATH
szTypeName As String * 80
End Type
Private Declare Function SHGetFileInfo Lib "Shell32" Alias
"SHGetFileInfoA" (ByVal pszPath As Any, ByVal dwFileAttributes As Long, psfi As
SHFILEINFO, ByVal cbFileInfo As Long, ByVal uFlags As Long) As Long
Function FolderHasSubFolders(ByVal sPath As String) As Boolean
Const SFGAO_HASSUBFOLDER = &H80000000
Const SHGFI_ATTRIBUTES = &H800
Dim FInfo As SHFILEINFO
SHGetFileInfo sPath, 0, FInfo, Len(FInfo), SHGFI_ATTRIBUTES
FolderHasSubFolders = (FInfo.dwAttributes And SFGAO_HASSUBFOLDER)
End Function
Private Sub Command1_Click()
MsgBox FolderHasSubFolders("C:\Program Files")
MsgBox FolderHasSubFolders("C:\Program Files\NetMeeting")
End Sub
|
|
|
|
|
|
|