using System;
using System.Runtime.InteropServices;
namespace EnumNetPcs
{
[StructLayoutAttribute(LayoutKind.Sequential, CharSet=CharSet.Auto)]
public class NetResource
{
public UInt32 Scope;
public UInt32 RType;
public UInt32 Display;
public UInt32 Usage;
[MarshalAs(UnmanagedType.LPTStr)]
public string LocalName;
[MarshalAs(UnmanagedType.LPTStr)]
public string RemoteName;
[MarshalAs(UnmanagedType.LPTStr)]
public string Comment;
[MarshalAs(UnmanagedType.LPTStr)]
public string Provider;
}
class Test
{
[DllImport("mpr.dll", CharSet=CharSet.Auto)]
private static extern Int32 WNetOpenEnum
(
UInt32 scope,
UInt32 type,
UInt32 usage,
[In] NetResource rsc,
out IntPtr handle
);
foreach(Object member in (IEnumerable)group.Invoke( "Members "))
{
DirectoryEntry dirmem = new DirectoryEntry(member);
Console.WriteLine(dirmem.Name);
}