• Зачем нужны class в Python?

    @res2001
    А значит, программисту, который будет работать с файлом, придётся быть в курсе, как файл устроен внутри.

    Это не так. Принцип черного ящика прекрасно работает в процедурных ЯП и используется повсеместно - просто используешь предоставленный интерфейс и не лезешь внутрь. Возьмите, например, Linux API и его функции работы с файлами - вы же не знаете, что там внутри делается, просто вызываете read/write и передаете файловый дескриптор и не запариваетесь о кэшировании, о том, какая файловая система ни диске и т.п. вещах. Вполне себе ООП подход.

    ЯПы с поддержкой ООП просто предоставляют синтаксический сахар для написания программы используя ООП подход. Но сам по себе ООП подход не ограничен только ООП языками.
    Хотя сложные варианты применения ООП, например с глубокой иерархией классов и полиморфизмом, реализовать на процедурном ЯП будет достаточно сложно, но выполнимо. Но в большинстве случаев такого не требуется, а там где требуется обычно используют ООП языки.

    Сам питон и вся его система классов реализована на Си.
    Написано
  • Как отключить пересылку (forwarding) для IPv4 навсегда (Windows)?

    @res2001
    Владимир, Это странно и противоречит тому, что пишет сам микрософт: https://learn.microsoft.com/ru-ru/troubleshoot/win...
    Написано
  • Почему не идет подключение телефона Yealink к OpenVPN?

    @res2001
    Это логи клиента или сервера? А что на противоположной стороне?
    Где конфиги?
    Написано
  • Как отключить пересылку (forwarding) для IPv4 навсегда (Windows)?

    @res2001
    Владимир, Похоже микрософт еще куда-то вплила дублера. Раньше хватало этого параметра на все адаптеры.
    Возможно есть похожие параметры в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Intrefaces в подпапках. У меня там ничего такого нет.
    Написано
  • Как вернуть способность системы открывать ссылки из любых приложений?

    @res2001
    Drottarutarnum, Явно что-то с ассоциациями файлов или приложением по умолчанию, а может что-то блокирует открытие.
    Раз вы недавно переустанавливали винду, то есть смысл сделать это еще раз с форматированием системного диска.
    Написано
  • LDAP для ПК с Windwos и Linux, есть решение?

    @res2001
    Вы ищите замену Active Directory? Тогда это самба, есть на линуксе. Это, конечно, не совсем полноценная замена, но зато бесплатно. Самбу можно привязать к OpenLDAP для авторизации.

    Служба каталогов - это OpenLDAP, но не думаю, что вам нужна сама по себе служба каталогов - это же просто база данных. Клиентов для OpenLDAP хватает всяких разных, в т.ч. и под винду есть.
    Написано
  • Как вернуть способность системы открывать ссылки из любых приложений?

    @res2001
    Drottarutarnum,
    ни из одного приложения не открывается ссылка

    Как вы открываете ссылку? Опишите процесс.
    Написано
  • Как получить список подпапок и удалить одну из них?

    @res2001
    David It, В представленном выше коде уже все делается.
    Единственный момент, по моему, dir сортирует по дате модификации, а не дате создания. Но обычно это и нужно.
    Какую дату для сортировки использовать задается в dir параметром /T, я его не использовал, можете поставить то что нужно.
    Написано
  • Как обойти рабочий VPN?

    @res2001
    Для этого обычно нужно не делать ВПН сервер шлюзом по умолчанию. Тогда по ВПН будет ходить только трафик до сети предприятия. Но при этом может быть необходимо добавить маршруты в таблицу маршрутизации, если это не делается на этапе создания ВПН соединения.
    В винде по умолчанию при создании ВПН подключения устанавливается галка "использовать как шлюз по умолчанию", она находится в глубине настроек IPv4 в свойствах ВПН подключения.

    Но у вас какая-то флешка и ВПН, видимо, не стандартный. Как оно там у вас настраивается и работает не ясно.
    Написано
  • В чем отличие ngnix от golang?

    @res2001
    NikitaW, И да и нет :)
    На сколько я в курсе, веб-сервер можно настроить так, чтобы он воспринимал, например, расширение html как запуск приложения, в этом случае html файл может восприниматься как скрипт PHP.
    Тогда запускается этот скрипт и генерирует динамический ответ клиенту. Т.е. в этом случае html файл должен действительно содержать PHP код.
    Обычно так не делают, но, по моему, запрета на подобные шаманства нет.
    Написано
  • Утечка памяти gdiplus?

    @res2001
    Wataru, valgrind отдельно, sanitizer отдельно, по моему так. Это ж разные инструменты.
    sanitizer включается флагами компиляции, для валгринда достаточно -g указать и запустить программу из-под него.
    В валгринде, на сколько я помню, инструмент для проверки памяти называется memcheck
    Под виндой в MSVS нет ни того ни другого.
    Написано
  • Утечка памяти gdiplus?

    @res2001
    Андрей Вшивков,
    вообще не понял сути вопроса

    Отлично он понял и выдал нормальный ответ. Dmitrii вам посоветовал воспользоваться специализированными инструментами для поиска утечек памяти, т.к. кода довольно много и глазами тут искать ошибку - ну такое себе развлечение, да и может быть, что конкретно в этих участках кода ошибки нет.

    Могу добавить от себя: если вы собираете приложение в MSVS, то запустите приложение под отладчиком без точек останова. Когда возникнет исключение, то вас выкинет в отладчик, отладчик будет остановлен, скорее всего, на каком-то системном вызове с ассемблерным кодом, вы должны по стеку вызовов перейти к вашему последнему коду (выбрать в стеке вызовов ваш последний метод) и искать причину ошибки там.
    Ошибки связанные с утечкой памяти могут быть достаточно сложными, т.к. утечка может произойти в одном месте программы, а исключение из-за утечки быть совершенно в другом месте.
    Написано
  • В чем отличие ngnix от golang?

    @res2001
    NikitaW, Чаще всего это статика. Но могут быть варианты в зависимости от настроек веб-сервера.
    Сейчас статика это обычно картинки, js скрипты, css и т.п. файлы, на которые могут быть ссылки в html коде.
    Динамика - это ответ, сгенерированный приложением на лету.
    Я не веб-разработчик, так что специфическими терминами могу не владеть, но некоторую основу знаю.
    Написано
  • Как получить список подпапок и удалить одну из них?

    @res2001
    David It, Цикл - это просто цикл, он выполняет заданные операции некоторое количество раз.
    В теле цикла вы можете написать свою логику, сохраняя даты каталогов, потом их отсортировать и т.д. и т.п. В общем, сделать можно. Но это слишком сложно.

    Поэтому я вам настоятельно РЕКОМЕНДУЮ смотреть на конструкцию с dir - она решит ваши проблемы:
    for /f "skip=1 tokens=* delims=" %%a in ('dir /ad /o-d /b c:\test\*') do echo %%a

    Тут dir выводит список подкаталогов в заданном каталоге, отсортированном по убыванию даты модификации (т.е. каталог с самой последней датой модификации будет первым). Дальше опцией skip=1 задается пропуск первой строки в выводе dir, т.е. первого каталога сверху.
    Написано
  • Как получить список подпапок и удалить одну из них?

    @res2001
    David It, Никак. Я потому и привел вариант с dirом, т.к. тут можно задать сортировку по дате.
    А дальше уже параметрами for /f вы сможете пропустить первую строку вывода, например. А так же наложить дополнительную фильтрацию по имени, используя канал с findstr.
    Написано
  • Диспетчер печати сильно грузит CPU. Почему?

    @res2001
    trlhrn, Сам когда-то делал методом научного тыка, он же метод исключения (удаляем драйвер и смотрим на поведение спулера). Других вариантов не нашел. Но мне было проще - принтеров меньше.
    Можете посмотреть журнал, возможно там будут какие-то ошибки от спулера с указанием драйвера, но это не обязательно.
    Так же можно начать с последнего установленного принтера/драйвера.

    Как вариант - завести второй принт сервер и постепенно перетаскивать на него принтера с одновременным наблюдением за поведением спулера на нем. После добавления очередного принтера второй принт сервер так же начнет подвисать, значит виноват последний добавленный драйвер.
    Написано
  • Как работают std::mutex?

    @res2001
    bLercs, У shared_mutex алгоритм работы отличается от стандартного варианта мьютекса.
    Надо использовать тот мьютекс, который нужен в данной конкретной задаче.
    Написано
  • Как работают std::mutex?

    @res2001
    Вот, кстати, еще вспомнил, отличный курс по параллельному программированию:
    https://compscicenter.ru/courses/hp-course/2022-sp...
    Написано
  • Как работают std::mutex?

    @res2001
    Да. Но зачем вам умный указатель на мьютекс? Внедрите мьютекс непосредственно в защищаемый объект.
    Если объект - это какой-то стандартный контейнер, то возможно надо создать класс своего защищенного контейнера, на базе стандартного.
    Написано
  • Как написать .bat скрипт, который подключится к удаленному серверу по SSH и запустить PHP-файл?

    @res2001
    eugene159, В putty можно передать пароль из параметров командной строки. В стандартном клиенте, по моему, такой возможности нет.
    Написано