esources in the specified computer.
'''''' </summary>
'''''' <history>
'''''' [Eduardo Morcillo] 11/08/2004 Created
'''''' </history>
'''''' -----------------------------------------------------------------------------
Public Shared Function GetShares(ByVal computername As String) As String()
'' Get the Win32_Share class
Dim shareClass As New System.Management.ManagementClass(String.Format("\\{0}\root\cimv2:Win32_Share", computername))
Dim shares As ManagementObjectCollection
Try
Dim shareNames As New ArrayList
'' Get the Win32_Share instances
shares = shareClass.GetInstances
'' Enumerate all instances
For Each share As ManagementObject In shares
Try
'' Add the name to the list
shareNames.Add(share.GetPropertyValue("Name"))
Finally
'' Release the WMI object
share.Dispose()
End Try
Next
'' Return the list as an array
Return DirectCast(shareNames.ToArray(GetType(String)), String())
Finally
'' Release the WMI object
shareClass.Dispose()
End Try
End Function
'''''' -----------------------------------------------------------------------------
'''''' <summary>
'''''' Returns the names of shared resources in the local computer.
'''''' </summary>
'''''' <returns></returns>
'''''' <remarks>
'''''' </remarks>
'''''' <history>
'''''' [Eduardo Morcillo] 11/08/2004 Created
'''''' </history>
'''''' -----------------------------------------------------------------------------
Public Shared Function GetShares() As String()
Return GetShares(".")
End Function
'''''' -----------------------------------------------------------------------------
'''''' <summary>
'''''' Stops sharing the folder.
'''''' </summary>
'''''' <history>
'''''' [Eduardo Morcillo] 11/08/2004 Created
'''''' </history>
'''''' -----------------------------------------------------------------------------
Public Sub Delete()
Dim res As Integer
res = Convert.ToInt32(_share.InvokeMethod("Delete", Nothing), CultureInfo.InvariantCulture)
If res <> 0 Then ThrowException(res)
End Sub
Public Sub Dispose() Implements System.IDisposable.Dispose
'' Dispose the WMI object
_share.Dispose()
GC.SuppressFinalize(Me)
End Sub
'''''' -----------------------------------------------------------------------------
'''''' <summary>
'''''' Sets the share info.
'''''' </summary>
'''''' <remarks>The security descriptor is not supported by this class.</remarks>
'''''' <history>
'''''' [Eduardo Morcillo] 11/08/2004 Created
'''''' </history>
'''''' -----------------------------------------------------------------------------
Private Sub SetShareInfo( _
ByVal maximumAllowed As Integer, _
ByVal description As String, _
ByVal descriptor As ManagementBaseObject)
Dim res As Integer
'' Set the share info
res = Convert.ToInt32(_share.InvokeMethod("SetShareInfo", New Object() {maximumAllowed, description, descriptor}), CultureInfo.InvariantCulture)
If res <> 0 Then ThrowException(res)
End Sub
'''''' -----------------------------------------------------------------------------
''