先做 1.在component中添加一个组件:shell32.dll
2.在refrence中添加microsoft scripting runtime然后在窗体中添加一个commandbutton和listbox,然后运行,然后点击list1中的对象,就可以啦Private mdctItems As New Dictionary
Private Sub Command1_Click()
Dim shTemp1 As New Shell
Dim fdTemp1 As Folder
Dim fiTemp1 As FolderItem
Dim strTemp As String
Set fdTemp1 = shTemp1.NameSpace(ssfNETWORK)
mdctItems.RemoveAll
For Each fiTemp1 In fdTemp1.Items
strTemp = fdTemp1.GetDetailsOf(fiTemp1, 0)
List1.AddItem strTemp
mdctItems.Add List1.NewIndex, fiTemp1
Next
End SubPrivate Sub List1_Click()
Dim fiTemp As FolderItem
Dim fiTemp2 As FolderItem
Dim fdTemp As Folder
Dim strTemp As String
Set fiTemp = mdctItems(List1.ListIndex)
If fiTemp.IsFolder Then
List1.Clear
mdctItems.RemoveAll
Set fdTemp = fiTemp.GetFolder
For Each fiTemp2 In fdTemp.Items
strTemp = fdTemp.GetDetailsOf(fiTemp2, 0)
List1.AddItem strTemp
mdctItems.Add List1.NewIndex, fiTemp2
Next
End If
End Sub
2.在refrence中添加microsoft scripting runtime然后在窗体中添加一个commandbutton和listbox,然后运行,然后点击list1中的对象,就可以啦Private mdctItems As New Dictionary
Private Sub Command1_Click()
Dim shTemp1 As New Shell
Dim fdTemp1 As Folder
Dim fiTemp1 As FolderItem
Dim strTemp As String
Set fdTemp1 = shTemp1.NameSpace(ssfNETWORK)
mdctItems.RemoveAll
For Each fiTemp1 In fdTemp1.Items
strTemp = fdTemp1.GetDetailsOf(fiTemp1, 0)
List1.AddItem strTemp
mdctItems.Add List1.NewIndex, fiTemp1
Next
End SubPrivate Sub List1_Click()
Dim fiTemp As FolderItem
Dim fiTemp2 As FolderItem
Dim fdTemp As Folder
Dim strTemp As String
Set fiTemp = mdctItems(List1.ListIndex)
If fiTemp.IsFolder Then
List1.Clear
mdctItems.RemoveAll
Set fdTemp = fiTemp.GetFolder
For Each fiTemp2 In fdTemp.Items
strTemp = fdTemp.GetDetailsOf(fiTemp2, 0)
List1.AddItem strTemp
mdctItems.Add List1.NewIndex, fiTemp2
Next
End If
End Sub
处,类型不匹配fdTemp1.Items
没有这个属性