• Как настроить маршруты для клиентов OpenVPN?

    @res2001
    НАТ не нужен. Дополнительный маршрут можете раздавать опциями через DHCP.
  • Почему float по умолчанию инициализируется как double?

    @res2001
    Герман, Можно и не использовать суффиксы (компилятор преобразует во float сам), но тогда при компиляции можете получить предупреждение о потере значимости (при определенных опциях компиляции).
    В переменной типа float не может храниться double. В случае подобной операции double преобразуется во float с потерей значимости. Преобразовать можно явно или не явно. Указывая суффикс вы явно говорите компилятору, что это константа типа float. Кроме того, что суффиксы избавляют от лишних предупреждений, это еще и хороший тон.
  • Как настроить множественное подключение с разными пользователями?

    @res2001
    Aborigen1020,
    в bat-скрипте нельзя указывать UNC пути

    Указывать то можно, просто большая часть команд командной строки, работающих с файлами, их не понимает. Для остальных команд UNC-путь - это просто строка.
    Но вам и не нужно, чтоб они понимали UNC - главное, чтоб ваша софтина понимала.
    Программу и скрипт положите в каталог доступный для чтения всем пользователям
  • Почему две сессии OpenVPN из одной сети убивают друг друга?

    @res2001
    Возможно это косяк именно варианта от vultr. Да и с версиями у них что-то напутано, т.к. на текущий момент актуальная версия OpenVPN 2.4.7.
    Поищите другого поставщика услуг ВПН или настройте OpenVPN самостоятельно.
  • Почему две сессии OpenVPN из одной сети убивают друг друга?

    @res2001
    Kordamon, Дык, не забывайте выключать ВПН, проблема надуманная :-)
    Может помочь полное выключение ноута.
  • Как заставить работать std::vector в gcc?

    @res2001
    Скорее всего имеется ввиду C++? Поменяйте тег.
    В Си нет STL (в т.ч. std::vector) у него своя собственная стандартная библиотека: https://en.cppreference.com/w/c
  • Почему рекурсия вовремя не останавливается?

    @res2001
    Почему у вас SYM->freq типа float? Разве частота встречаемости данного символа (количество вхождений данного символа в заданный текст) - это вещественное число?
    Зачем вам для code массив char? Хватит и обычного int или uint. Вообще code можно генерировать в процессе обхода дерева на лету.
    Избавьтесь от рекурсии.
    Где определение struct alphabet и как формируется alphabetLetter.
    Метод научного тыка замените на отладчик.
  • Как посчитать количество разделителей в строке?

    @res2001
    KTG, если оформить как процедуру и в цикле вызывать ее через call, то при возврате из процедуры внешний цикл продолжится нормально.
    Не всегда можно экранировать, например, вы получаете строку через параметры ком.строки (тогда пользователь сам должен экранировать) или вы читаете строку из файла. Но судя по вашему ответу с крышкой как раз экранирование в самой строке не требуется, но с другими спец.символами это не прокатит.
  • Как посчитать количество разделителей в строке?

    @res2001
    Сомнительное решение какое-то, но работает :-)
    В первом цикле строка пишется в файл с именем "$":
    echo $ - просто возвращает имя файла внутрь цикла. %%~zN-2 - возвращает размер файла, -2 - вычитает 2 байта занятых символами CRLF, которые добавляет echo при выводе.

    Сомнительное, потому что, по идее при любой подстановке символа ^ он должен был бы восприняться cmd как спец.символ. Но почему то этого не происходит. Возможно виновато отложенное расширение или cmd с крышкой работает как-то по другому, чем с прочими спец.символами. Скорее всего, если заменить "крышку" на другой спец.символ (&|>< и проч.) то код развалится.
  • Калькулятор ip исходя из колличества хостов?

    @res2001
    Легко считается на стандартном виндовом калькуляторе в режиме программиста.
    Ваш последний адрес после прибавления 857 к 192.168.248.20: 192.168.251.109
  • Как релизовать хранение истории сущности в реляционной базе?

    @res2001
    #, Не читал, каюсь :-) Меня сейчас эта тема не особо волнует. Зашел сюда, т.к. раньше сталкивался с разными вариантами реализации истории да и аналогичные вопросы тут появляются регулярно.
  • Почему не срабатывает запись в файл?

    @res2001
    KTG, Используйте такой вариант:
    echo.!pid!>pack.id
    Это "отложенное расширение переменной среды", смотри setlocal /? и set /?
    Отложенное расширение актуально когда вы в отдельном блоке (в скобках) присваиваете переменной новое значение и здесь же ее используете.
    По умолчанию отложенное расширение выключено, а весь блок рассматриваются cmd как одна команда и переменные подставляются один раз при входе в блок. Соответственно при выключенном отложенном расширении переменные внутри блока имеют то же значение, что и при входе в блок (за исключением счетчиков цикла).
  • Как релизовать хранение истории сущности в реляционной базе?

    @res2001
    #,
    пожалуй слишком смелое заявление

    Возможно, я тему не изучал подробно и не использовал.
  • Почему не срабатывает запись в файл?

    @res2001
    KTG,
    echo+%pid%>pack.id

    echo+ оказался аналогом echo. - не знал :-)
    Чтоб set выполняла арифметические операции надо использовать set /a (см. set /?)
  • Почему не срабатывает запись в файл?

    @res2001
    KTG, Устанавливать переменную из файла можно так:
    set /p "pid="<pid.id
    В переменной окажется содержимое последней строки файла.

    Предусмотрите вариант, когда либо файла pid.id нет, либо он пустой (т.е. переменная pid из файла не проинициализировалась). После чтения файла:
    if not defined pid set "pid=1"
    В этом случае у вас pid всегда будет что-то содержать и echo %pid% не даст ошибки.

    Кроме того, есть вариант без ошибочного echo:
    echo.%pid%>pid.id
    В таком варианте команды ошибки не будет, но если pid не определена, то в файл запишется только "перевод строки".

    То переменная в файле обновляется. Т.е. ожидаю что и set может писать в файл.

    Вы ошибаетесь. В файл пишется только то что команда выводит на консоль. Оператор > это оператор перенаправления вывода. Если вывода нет, то в файл ничего не запишется.
  • Как релизовать хранение истории сущности в реляционной базе?

    @res2001
    #, Недавно тут был похожий вопрос и в одном из ответов было упоминание о темпоральных таблицах в MS SQL.
    Про другие СУБД не в курсе.
  • Как релизовать хранение истории сущности в реляционной базе?

    @res2001
    Отличная статья. Комменты то же рулят.
    Видел в жизни реализацию всех вариантов, кроме типа3, и несколько гибридов.

    Вроде бы сейчас в некоторых СУБД есть поддержка таблиц с историей, т.е. СУБД берет на себя эту работу.
  • Управление Windows ПК без AD?

    @res2001
    Антон, У меня не было опыта использования АД где КД только удаленный и не всегда доступен.
    Как она себя поведет в таком случае? Что будет с клиентами, если КД будет долго не доступен или умрет по любой причине? Какие еще могут возникнуть проблемы не берусь сказать.
    Возможно ТС и прав, что не хочет связываться с АД.

    Я бы сделал приближенный к реальности стенд с АД и погонял бы на тестовой конфигурации, устраивая разные проблемные ситуации. Если в каком-то случае восстановить работоспособность клиентов будет не возможно удаленно и в короткое время, то проще будет отказаться от АД.
  • Управление Windows ПК без AD?

    @res2001
    В свое время пришлось админить среднего размера сеть без АД. Причем АД не было принципиально. Так же не приветствовались любые сторонние средства. Установка была на использование стандартных возможностей винды. Приходилось выкручиваться.
    Вот что использовал:
    1.Стандартные виндовые оснастки управления, основанные на mmc умеют подключаться к удаленным компьютерам и менять их конфигурацию. Конечно нужен админский доступ.
    2.Запускать удаленные процессы можно с помощью wmic, который есть по умолчанию в винде.
    3.Некоторые утилиты командной строки умеют работать с удаленным ПК. Например: netsh, reg и тот же wmic.
    4.По моему, с помощью WSUS можно делать свои собственные обновления и распространять их через WSUS. Но это сам не испытывал.
    5.Практически все в винде можно делать правкой реестра, правда для применения правок нужно либо перезагружаться либо давать команду на обновление конфигурации. Править реестр можно удаленно с помощью reg.
    6.Удаленный рабочий стол. Так же применял механизм remote shadow - когда локальный и удаленный пользователи видят один и тот же раб.стол и действия друг друга. В некоторых ситуациях это нужно.
    7.Пачка самописных скриптов для удаленной конфигурации ПК. В скриптах старался использовать только стандартный функционал виндов без привлечения сторонних средств.

    В общем почти все что нужно для удаленного управления в винде есть практически из коробки. Другое дело, что оно все разрозненно и нет какого-то единого центра откуда можно было бы все делать. Для это у микрософта есть АД.