public static MibTcpTableOwnerPid GetTcpTable() { MibTcpTableOwnerPid table = new MibTcpTableOwnerPid(); int length = 0; GetExtendedTcpTable(IntPtr.Zero, ref length, false, AiFamily.INet, TcpTableClass.OwnerPidAll, 0); using (MemoryAlloc mem = new MemoryAlloc(length)) { GetExtendedTcpTable(mem, ref length, false, AiFamily.INet, TcpTableClass.OwnerPidAll, 0); int count = mem.ReadInt32(0); table.NumEntries = count; table.Table = new MibTcpRowOwnerPid[count]; for (int i = 0; i < count; i++) { table.Table[i] = mem.ReadStruct <MibTcpRowOwnerPid>(sizeof(int), i); } } return(table); }
public static MibTcpTableOwnerPid GetTcpTable() { MibTcpTableOwnerPid table = new MibTcpTableOwnerPid(); int length = 0; GetExtendedTcpTable(IntPtr.Zero, ref length, false, AiFamily.INet, TcpTableClass.OwnerPidAll, 0); using (MemoryAlloc mem = new MemoryAlloc(length)) { GetExtendedTcpTable(mem, ref length, false, AiFamily.INet, TcpTableClass.OwnerPidAll, 0); int count = mem.ReadInt32(0); table.NumEntries = count; table.Table = new MibTcpRowOwnerPid[count]; for (int i = 0; i < count; i++) table.Table[i] = mem.ReadStruct<MibTcpRowOwnerPid>(sizeof(int), i); } return table; }