• Как заполняются многомерные массивы?

    @Mercury13
    Программист на «си с крестами» и не только
    New(Psh[4, 1]);
    Переводим на C#. Правда, тут есть одна загвоздка. Массивы в c# начинаются только с 0, и надо смотреть: либо заводить холостой 0-й элемент, либо корректировать индексы. Так что перед нами два варианта.
    Psh[4][1] = new short[393];
    Psh[3][0] = new short[392];
    (для примера работаю со вторым)

    function OpenA(FileName: ShortString; Mode: LongWord): integer;
    Stream OpenA(string FileName, FileAccess access);


    Как перевести ReadA? Это не так просто. Дело в том, что языки со стандартным промежуточным кодом (к ним относятся в первую очередь языки семейства Java и .NET) обычно пишут в порядке байтов Motorola. На Delphi файл писался в порядке Intel. Так что мы считываем 392 word’а, а затем смотрим, что делать: либо обернуть байты, либо сказать: теперь у нас новый стандарт — Motorola!

    if (!ReadA(Df[3][0], Psh[3][0], 392) {
      CloseA(Df[3, 0]);
      Psh[3][0] = null;
      return;
    }


    И последний рывок.
    Pkts[4, 1]:= @Psh[4, 1]^[9];
    Из-за отсутствия указателей (точнее, есть они, но мы же не хотим unsafe-кода) придётся Pkts разбивать на две части: ссылку на массив и смещение в массиве.
    Pkts[3][0].array = Psh[3][0];
    Pkts[3][0].offset = 8;
    Ответ написан
  • С помощью какой команды можно отследить локальный адрес компьютера, с которого исходит большой трафик?

    bk0011m
    @bk0011m
    Системный администратор
    Я обычно пользуюсь утилитами:
    iftop
    trafshow
    ifstat
    tshark

    Но их ставить нужно. На голой системе их нет.
    Ответ написан
    1 комментарий
  • TMG и доступ к сайту

    Dharmantra
    @Dharmantra
    Заходите в правило которое запрещает доступ к сайту, далее вкладка «Пользователи», внизу окно «Исключения» добавляете туда набор учетных записей, ОК, Применить. Ждете пять минут, потом проверяете.
    Ответ написан
    Комментировать