Example #1
0
        public Form1()
        {
            m_AddNewItem  = new AddNewItem(this.AddItem);
            m_InsertItem  = new InsertItem(this.AddOrInsertItem);
            m_ChangedItem = new ChangedItem(this.ChangeItem);
            m_DeletedItem = new DeletedItem(this.DeleteItem);

            InitializeComponent();
            _IpHlpAPI           = new IpHlpApidotnet.IPHelper();
            conns.ItemAdded    += new TCPUDPConnections.ItemAddedEvent(conns_ItemAdded);
            conns.ItemInserted += new TCPUDPConnections.ItemInsertedEvent(conns_ItemInserted);
            conns.ItemChanged  += new TCPUDPConnections.ItemChangedEvent(conns_ItemChanged);
            conns.ItemDeleted  += new TCPUDPConnections.ItemDeletedEvent(conns_ItemDeleted);
            RefreshLower();

            //hack to initially try to reduce the memory footprint of the app (admin only)
            try
            {
                Process loProcess = Process.GetCurrentProcess();
                loProcess.MaxWorkingSet = loProcess.MaxWorkingSet;
                loProcess.Dispose();
            }
            catch { }
            System.Timers.Timer ShrinkTimer = new System.Timers.Timer();
            ShrinkTimer.Interval = 60000;
            ShrinkTimer.Elapsed += new System.Timers.ElapsedEventHandler(ShrinkTimer_Elapsed);
            ShrinkTimer.Start();
        }
Example #2
0
        public Form1()
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            MyAPI = new IpHlpApidotnet.IPHelper();
        }
Example #3
0
        public Form1()
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            MyAPI = new IpHlpApidotnet.IPHelper();
        }
Example #4
0
        public NetStat()
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();

            MyAPI = new IpHlpApidotnet.IPHelper();
            listView1.GridLines = true;
        }
Example #5
0
        public static int getProcessId(IPv4Datagram datagram, string thisComputerIp)
        {
            myAPI = new IPHelper();
            string sourceIp   = "";
            string sourcePort = "";
            string destIp     = "";
            string destPort   = "";

            switch (datagram.Protocol)
            {
            case 6:
                TcpPacket tcpPacket = datagram.HandleTcpPacket();
                if (tcpPacket.SourceIP == thisComputerIp)
                {
                    sourceIp   = tcpPacket.SourceIP;
                    sourcePort = tcpPacket.SourcePort.ToString();
                    destIp     = tcpPacket.DestinationIP;
                    destPort   = tcpPacket.DestinationPort.ToString();
                }
                else
                {
                    sourceIp   = tcpPacket.DestinationIP;
                    sourcePort = tcpPacket.DestinationPort.ToString();
                    destIp     = tcpPacket.SourceIP;
                    destPort   = tcpPacket.SourcePort.ToString();
                }

                myAPI.GetExTcpConnexions();
                for (int i = 0; i < myAPI.TcpExConnexions.dwNumEntries; i++)
                {
//						if (/*sourceIp==myAPI.TcpExConnexions.table[i].Local.Address.ToString()&&*/
//							sourcePort==myAPI.TcpExConnexions.table[i].Local.Port.ToString()//&&
//							/*destIp==myAPI.TcpExConnexions.table[i].Remote.Address.ToString()&&
//							destPort==myAPI.TcpExConnexions.table[i].Remote.Port.ToString()*/)
//						{
//							int ret = myAPI.TcpExConnexions.table[i].dwProcessId';
//							myAPI=null;
//							GC.Collect();
//							return ret;
//						}

                    if (myAPI.TcpExConnexions.table[i].Remote.Port == 0)
                    {
                        if (sourcePort == myAPI.TcpExConnexions.table[i].Local.Port.ToString())
                        {
                            int ret = myAPI.TcpExConnexions.table[i].dwProcessId;
                            myAPI = null;
                            GC.Collect();
                            return(ret);
                        }
                    }
                    else
                    {
                        if (sourcePort == myAPI.TcpExConnexions.table[i].Local.Port.ToString() &&
                            destPort == myAPI.TcpExConnexions.table[i].Remote.Port.ToString())
                        {
                            int ret = myAPI.TcpExConnexions.table[i].dwProcessId;
                            myAPI = null;
                            GC.Collect();
                            return(ret);
                        }
                    }
                }
                break;

            case 17:
                UdpDatagram udpPacket = datagram.HandleUdpDatagram();
                if (udpPacket.SourceIP == thisComputerIp)
                {
                    sourceIp   = udpPacket.SourceIP;
                    sourcePort = udpPacket.SourcePort.ToString();
                    destIp     = udpPacket.DestinationIP;
                    destPort   = udpPacket.DestinationPort.ToString();
                }
                else
                {
                    sourceIp   = udpPacket.DestinationIP;
                    sourcePort = udpPacket.DestinationPort.ToString();
                    destIp     = udpPacket.SourceIP;
                    destPort   = udpPacket.SourcePort.ToString();
                }
                myAPI.GetExUdpConnexions();
                for (int i = 0; i < myAPI.UdpExConnexion.dwNumEntries; i++)
                {
                    if (                            /*sourceIp==myAPI.UdpExConnexion.table[i].Local.Address.ToString()&&*/
                        sourcePort == myAPI.UdpExConnexion.table[i].Local.Port.ToString())
                    {
                        int ret = myAPI.UdpExConnexion.table[i].dwProcessId;
                        myAPI = null;
                        GC.Collect();
                        return(ret);
                    }
                }
                break;
            }
            return(-1);
        }