Private Sub Command1_Click()
Dim hEnum As Long, lpBuff As Long, NR As NETRESOURCE
Dim cbBuff As Long, cCount As Long
Dim p As Long, res As Long, i As Long
Dim nodX As Node
Set nodX = TreeView1.Nodes.Add(, , "R", "Root")
If Err.Number > 0 Then Exit Sub
NR.lpRemoteName = 0
cbBuff = 10000
cCount = &HFFFFFFFF
res = WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, NR, hEnum)
If res = 0 Then
lpBuff = GlobalAlloc(GPTR, cbBuff)
res = WNetEnumResource(hEnum, cCount, lpBuff, cbBuff)
If res = 0 Then
p = lpBuff
For i = 1 To cCount
CopyMemory NR, ByVal p, LenB(NR)
nodX.Text = PointerToString(NR.lpRemoteName)
nodX.Image = 1
'List1.AddItem PointerToString(NR.lpRemoteName)
p = p + LenB(NR)
Next i
WNetCloseEnum (hEnum)
hEnum = 0
res = WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_ANY, 0, NR, hEnum)
If res = 0 Then
lpBuff = GlobalAlloc(GPTR, cbBuff)
cCount = &HFFFFFFFF
res = WNetEnumResource(hEnum, cCount, lpBuff, cbBuff)
If res = 0 Then
p = lpBuff
For i = 1 To cCount
CopyMemory NR, ByVal p, LenB(NR)
Set nodX = TreeView1.Nodes.Add("R", tvwChild, PointerToString(NR.lpRemoteName), "")
nodX.Text = PointerToString(NR.lpRemoteName)
nodX.Image = 2
'List1.AddItem PointerToString(NR.lpRemoteName)
p = p + LenB(NR)
Next i
End If
End If
WNetCloseEnum (hEnum)
End If
End If
End Sub