コード例 #1
0
        static public void RefreshRouteInfo()
        {
            fwdTable = IntPtr.Zero;
            int size   = 0;
            var result = NativeMethods.GetIpForwardTable(fwdTable, ref size, true);

            fwdTable     = Marshal.AllocHGlobal(size);
            result       = NativeMethods.GetIpForwardTable(fwdTable, ref size, true);
            forwardTable = ReadIPForwardTable(fwdTable);
            Marshal.FreeHGlobal(fwdTable);
        }
コード例 #2
0
        //Инициализация всех структур и считывание таблицы маршрутизации
        static public void Init()
        {
            fwdTable = IntPtr.Zero;
            int size   = 0;
            var result = NativeMethods.GetIpForwardTable(fwdTable, ref size, true);

            fwdTable     = Marshal.AllocHGlobal(size);
            result       = NativeMethods.GetIpForwardTable(fwdTable, ref size, true);
            forwardTable = ReadIPForwardTable(fwdTable);
            Marshal.FreeHGlobal(fwdTable);

            tmpTable.Columns.Add("DestIP", System.Type.GetType("System.String"));
            tmpTable.Columns.Add("SubnetMask", System.Type.GetType("System.String"));
            tmpTable.Columns.Add("NextHop", System.Type.GetType("System.String"));
            tmpTable.Columns.Add("IfIndex", System.Type.GetType("System.Int32"));
            tmpTable.Columns.Add("Type", System.Type.GetType("System.Int32"));
            tmpTable.Columns.Add("Proto", System.Type.GetType("System.String"));
            tmpTable.Columns.Add("Age", System.Type.GetType("System.Int32"));
            tmpTable.Columns.Add("Metric1", System.Type.GetType("System.Int32"));
            tmpTable.Columns.Add("Type_Text", System.Type.GetType("System.Int32"));
            tmpTable.Columns.Add("TypeText", System.Type.GetType("System.String"));
            tmpTable.Columns.Add("IFText", System.Type.GetType("System.String"));
        }