• Проблема с русским языком и видимо с кодировкой русского языка в win 10?

    @res2001
    Денис Ахунов,
    консоль также в utf-8

    Консоль не нужно в UTF8. cmd.exe с давних пор не дружит с UTF8 (знаю про это еще со времен WinXP). Не в том смысле, что не может туда выводить текст, а в том, что в этой кодировке она перестает нормально работать, т.е. не выполняет введенные команды и т.п. На сколько помню в Вин10 это так и не починили, хотя я давно уже не интересовался.
    Поэтому ваш вариант в консоли либо 1251, либо 866.

    как это сделать?

    А оно вам нужно? У вас же
    Вроде как всё работает
    .
    Как сделать уже было написано выше.
    Узнать кодировку консоли GetConsoleCP, перекодировать MultiByteToWideChar. В общем идите в MSDN, там по Windows Console API целый раздел есть.
    А исходники, оставляйте в UTF8. Для хранения UTF8 используйте wchar_t* или (wstring и т.п.). Когда строка перекодируется из UTF8 в 1251, то она становится char* или string.
  • Проблема с русским языком и видимо с кодировкой русского языка в win 10?

    @res2001
    Денис Ахунов, Почему бы ему и не работать. Для тестовой задачи или лабы может и сгодится.
    Хотя все будет зависеть от того как будет использоваться приложение.
    Суть в том, что так вы меняете настройки внешнего окружения (кодировку консоли). Но само внешнее окружение может быть не готово работать с вашей кодировкой.
    Например если входные данные будут подаваться в приложение из файла с помощью перенаправления стандартного ввода, а файл будет в другой кодировке (например в cp866), то SetConsoleCP(1251) не приведет к перекодировке файла и вы прочитаете данные в неправильной кодировке и все опять развалится.

    Кроме того менять настройки консоли из программы - создавать дополнительные проблемы пользователям программы. Например вы пишете какую-то утилиту командной строки, которую наверняка будут использовать для автоматизации чего-либо во внешних скриптах и т.п. Писатель скриптов планирует везде использовать подходящую для него кодировку, а вы принудительно в своей утилите используете 1251, пользователю придется предпринимать какие-то дополнительные действия, чтобы использовать вашу программу.

    Правильный подход - узнать текущую кодировку консоли и перекодировать весь ввод и вывод в эту кодировку.

    Это все лирические отступления, чтоб вы осознали глубину проблемы :-)
  • Проблема с русским языком и видимо с кодировкой русского языка в win 10?

    @res2001
    Дмитрий Павлов, Надо было дать эту ссылку, гораздо полезней.
    Денис Ахунов, Лично я за последний вариант, который описан по ссылке выше (перекодировка).
    Но если у вас какой-то учебный проект и не хочется запариваться с перекодировкой, то можно использовать "Самый простой (и самый неудобный) способ" по ссылке выше. Кстати, не понятно, что особо не удобного автор нашел в этом способе.

    PS: WinAPI не ограничивается только описанными в статье функциями перекодировки, я бы предложил использовать более универсальный вариант: MultiByteToWideChar и ее двойника WideCharToMultiByte/
  • Как сделать что-бы после вывода текста,можно было еще раз вводить консоль?

    @res2001
    Видимо, нужно сформулировать свою мысль чётче. Возможно, добавить имеющийся код для иллюстрации текущей ситуации.
  • Qt+MinGW x86: как отладить вылет в release-версии?

    @res2001
    Mercury13, Добавление отладочной информации только раздувает размер исполняемого файла, на код не влияет. Часто полезно оставлять отладочную информацию. Например в случае core dump в линуксе - можно больше информации получить в gdb, не имея исходников. Видел много достаточно крупных проектов, у которых -g используется в релизе.
  • Qt+MinGW x86: как отладить вылет в release-версии?

    @res2001
    Mercury13, Не использую Qt.
    В гугле нашел вот это: CONFIG += force_debug_info
    Все сводится к добавлению в опции компилятора флага -g.
  • Какие паттерны использовать для игровых ботов?

    @res2001
    Виктор П.,
    Любую ветку switch можно обернуть в функцию

    Можно, конечно. Только это не избавляет от самого switchа.
    В моем предложении вместо свича, остается что-то типа table_func[op](args)
    В принципе это с натяжкой можно считать некоей вариацией паттерна стратегия в процедурном стиле.
    Можете функции заменить на классы, с общим интерфейсом и точно так же вызывать метод класса, роли это не играет.
  • Установка stunnel какой порт использовать?

    @res2001
    dminster94, без сквидов (или другого аналогичного ПО) - никак. Функционал прокси сервера не входит в набор стандартного ПО ни в одной ОС.
  • Установка stunnel какой порт использовать?

    @res2001
    dminster94, Надо не просто прокси сделать, а анонимизирующий прокси. Не знаю как это делать, никогда не было нужды в этом.
    Обычный прокси сделать легко, есть свободное ПО. Можно например squid поднять, настройка там не сильно сложная, мануалов полно в инете. Вроде squid умеет деанонимизацию, но это надо вникать. Я давно уже не держал в руках его.
  • Установка stunnel какой порт использовать?

    @res2001
    dminster94, Не увидел, что Hola использует ipsec. На сколько я понимаю - это просто прокси. Видимо они кроме проксирования еще делают некоторую анонимизацию веб трафика.
    Бесплатная версия ничего не шифрует. Шифрование есть только в Hola Premium за деньги. Но шифрование само по себе это еще не ВПН.

    Вообще для использования ipsec вообще ничего не надо ставить - во всех современных ОС ipsec поддерживается из коробки, даже в Windows Home. Нужно только правильно настроить. Но ручная настройка его достаточно утомительное занятие.
  • Установка stunnel какой порт использовать?

    @res2001
    dminster94, stunnel не скрывает трафик под HTTPS, он скрывает трафик под SSL. Писал об этом в первых ответах. SSL - сам по себе шифрованный протокол, под ним может скрываться какой угодно трафик. SSL трафик вполне может быть опознан как ВПН сам по себе, даже без анализа нижележащего протокола.
    В любом случае без подмены сертификатов расшифровать протокол спрятанный под SSL не возможно. Но с подменой сертификатов достаточно легко бороться - настройкой контроля сертификатов на клиенте и сревере. Но борьба эта специфическая - если проверка сертификатов завершиться успешно - то все работает, если не успешно (нас слушают) - не работает.
  • Как удалить слово из строки?

    @res2001
    Вам нужно удалить первые 2 слова или конкретно указанные слова в любых позициях?
    В общем случае смотрите string.replace
  • Установка stunnel какой порт использовать?

    @res2001
    dminster94,
    вывод технология херня, не скрывает она ничего в 2021)

    Вывод не верный!
    В openvpn и в wireguard используется стойкое шифрование, при сегодняшних технических возможностях что бы расшифровать такой пакет потребуется несколько 1000 лет (а то и больше, точных цифр не помню).
    Правда при неправильных настройках можно использовать и не стойкое шифрование.
    Факт наличия шифрованного трафика определяется по косвенным признакам, которые, обычно, есть в любом протоколе. Определение наличия шифрованного трафика не означает возможность расшифровки этого трафика.
    То что вы пытаетесь сделать используя stunnel+openvpn приводит к тому, что шированный трафик openvpn ширфуется повторно stunnel (SSL), таким образом, возможно скрыть наличие трафика openvpn, но не SSL.
    Кроме того, если для проверки используется подмена сертификатов (это можно сделать прозрачно, например на корпоративном фаерволе) и вы настройками stunnel не проверяете жесткое соответствие сертификатов клиента и сервера, то остается возможность расшифровать трафик SSL на промежуточном фаерволе и понять, что скрывается за ним.
    Что бы грамотно все настроить, надо немного разбираться в теме защиты трафика и понимать что к чему. Если вас это интересует почитайте про криптографию, открытые/закрытые ключи, X509, актуальные криптографические алгоритмы, варианты защиты трафика и варианты взлома шифрованного трафика.
    выше конфиг кидал смотрите, все есть

    В конфиге измените опцию log-attend на log-append. Возможно из-за неверной опции, конфиг не воспринимается openvpn, не понятно, правда, почему ошибка такая. Опции log-attend не существует в природе.
  • OpenVPN: Как дать доступ к ресурсу сервера на клиентском ПК?

    @res2001
    BLOOD_ELF,
    Может роутер надо перезагрузить...

    Может быть.
    Добавьте в серверный конфиг: push "route 192.168.100.0 255.255.255.0"
    После этого при добавлении маршрута в роутер и при подключенном клиенте попробуйте пропинговать с роутера клиента, по ВПН адресу - должно работать и наоборот то же, если только фаерволами где-то не будет блокироваться.
    Когда это заработает, то и доступ к сервису то же, по идее, будет работать.
  • OpenVPN: Как дать доступ к ресурсу сервера на клиентском ПК?

    @res2001
    BLOOD_ELF,
    Чем чревато?

    Общий доступ подключения активирует урезанную версию DHCP сервера и NATа. При этом никак это все не настраивается, используются некие настройки по умолчанию. У вас в сети появляется левый DHCP сервер.
    Кроме того, время от времени вся эта хрень не стартует корректно.
    Я в свое время пытался на этом заставить работать сеть из 3 компов - раздавал интернет, который получал с телефона, работающего в режиме модема на одном из компов. Оно работает, но крайне не стабильно.
    У вас все заработало, потому что в комплекте с общим доступом идет и NAT, про необходимость NATа я вам неоднократно писал, но только не в таком варианте.
  • OpenVPN: Как дать доступ к ресурсу сервера на клиентском ПК?

    @res2001
    BLOOD_ELF,
    Только не совсем понимаю, чем это поможет.

    Дело в том, что роутер ничего не знает о сети 10.8.0.0, поэтому пакеты для этой сети он отправляет на шлюз по умолчанию. А шлюз по умолчанию у него явно не 192.168.100.222, поэтому ответные пакеты до клиента не дойдут.
    Вы добавите маршрут, тогда роутер начнет слать ответы в правильном направлении.
    Вот тут настраивать?

    Да
  • OpenVPN: Как дать доступ к ресурсу сервера на клиентском ПК?

    @res2001
    BLOOD_ELF, Включить службы в автозагрузку. По умолчанию openvpn регшистрирует свои службы, но они в ручном управлении.
    Включил общий доступ в подключении на сервере

    Общий доступ в винде - изрядный костыль. Я бы не рекомендовал его использовать в критичных местах.
    Раз у вас есть доступ к роутеру, то проще всего настроить 1 вариант из предложенных, надо только на роутере добавить маршрут до ВПН сети 10.8.0.0\24 через ваш сервер. И все!