Задать вопрос
  • Как настроить VPN через SSH на windows?

    @res2001
    Developer, ex-admin
    Комментировать
  • Что такое Си Runtime Library?

    @res2001
    Developer, ex-admin
    CRT - это реализация стандартной библиотеки Си/С++ для данного компилятора.
    ОС обычно пишутся на Си и если в ОС нет реализации функций из стандарта Си, то они реализуются в стандартной библиотеке. Все классы из stdlib С++ реализованы в CRT.

    CRT в VS может линковаться как статически так и динамически, в зависимости от опций компилятора. Линкуете статически - у вас распухает ваш исполняемый файл, динамически - пользователь должен предварительно поставить соответствующий vcredist (установку можно встроить в собственный инсталлятор). С точки зрения производительности оба варианта примерно одинаковы.

    Вы можете не использовать стандартную библиотеку в принципе (отключив ее опциями компилятора) и работать на прямую с ОС, но это накладывает много ограничений и вы фактически остаетесь с кастрированным вариантом ЯП, т.к. например в С++ даже стандартный new/delete, на сколько я знаю, реализованы в стандартной библиотеке и прямого аналога в ОС нет. Обычно этим никто не заморачивается из-за возникающих проблем, решение которых заметно увеличит время реализации проекта, разве что вам необходимо сделать исполняемый файл минимального размера, максимально быстро стартующий и без зависимостей.
    Ответ написан
    4 комментария
  • Как рассортировать файлы по папкам, используя часть имени файла?

    @res2001
    Developer, ex-admin
    Батником это сделать достаточно легко:
    1. обход каталога с помощью
    for %%a in (c:\temp\*-*) do ( ... )
    2.Обрезание имени файла с помощью
    for /f "tokens=1 delims=-" %%b in (%%a) do ( ... )
    3.создание каталога md
    4.перенос файла в каталог move
    Справка:
    for /?
    md /?
    move /?

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

    @res2001
    Developer, ex-admin
    Можно ли как-то возложить на компилятор эту работу?

    int arr[] = {1, 2, 3};
    size_t size = sizeof(arr)/sizeof(arr[0]);  // size == 3

    Но как вы это прикрутите к вашей схеме не знаю.
    Возможно есть смысл определить ваши массивы как константы по одному и использовать эти константы для инициализации test и вычисления sizeof().
    Ответ написан
  • Как отправить аудиофайл по POST HTTP с помощью PulseAudio?

    @res2001
    Developer, ex-admin
    На сколько я знаю pulseaudio сама не умеет читать звуковые файлы.
    Она может только писать в (play) или читать из (record) звукового устройства аудио данные.
    Из аудио файла данные нужно читать другими средствами. Например можно использовать libsndfile. Прочитанные данные уже можно подавать для воспроизведения в pulseaudio.
    Как-то так.

    Я сам еще не успел плотно познакомиться с pulseaudio, но скоро предстоит этим заняться, так что я пока изучаю тему. libsndfile - достаточно простая библиотека, поддерживает несколько широко распространенных форматов аудио файлов (mp3 - не поддерживает по лицензионным соображениям).
    Ответ написан
    Комментировать
  • Есть ли жизнь в госкорпорациях?

    @res2001
    Developer, ex-admin
    Близко знаком с ситуацией в одном местном холдинге - там кумовство и все прочее из вашего списка (кроме гос.тайны - у них своя "тайна") в полном объеме, а может и хуже.
    Но т.к. без ИТ ни одна большая компания сейчас работать не может, то и там есть не плохие места с нормальными зарплатами и работают там нормальные спецы. Но таких мест мало и они, обычно, уже заняты.
    Ответ написан
    Комментировать
  • Компьютерный мост возможно ли?

    @res2001
    Developer, ex-admin
    Озвучьте цели ваших хотелок, т.к. из вашего вопроса сложно понять чего вы хотите добиться.
    Если нужно удаленное администрирования сервера то обычно достаточно RDP/ssh/VNC (в зависимости от ОС).
    Если хотите удаленно ставить на сервера ОС или менять настройки БИОС, то берите сервер с IPMI. Но на прямую выпускать IPMI в интернет я бы не стал.
    Вместо IPMI можно юзать и IP KVM.
    Ответ написан
    Комментировать
  • Как оптимизировать поиск ближайших значений в массиве python?

    @res2001
    Developer, ex-admin
    Если отсортировать массив, то ближайшие значения будут в окрестностях точки. Искать в сортированном массиве бинарным поиском.
    Вместо сортировки и бинарного поиска можно использовать деревья.
    Ответ написан
    Комментировать
  • Как объеденить подсеть приходящую с l2tp over ipsec с внутренней подсетью на mikrotik?

    @res2001
    Developer, ex-admin
    Кто у вас с чем пингуется не ясно. Описание не достаточное.
    Клиент пингует ХМС и обратно?
    Если да - то все уже работает.
    Если нет - описание не достаточно подробное. Кто у вас является шлюзом из ВПН сети в сеть 192.168.0.0?
    Предполагаю, что это ВПН сервер, на нем должен быть адрес из этого диапазона и с него должно быть возможно пропинговать ХМС и обратно.
    Если так, то нужно либо настройками ВПН сервера либо другим способом добавить в таблицу маршрутизации клиента путь до сети 192.168.0 через ВПН сервер.

    Выключите на время настройки фаервол на ХМС. Когда все заработает включите, возможно потребуется внести какие-то изменения в конфигурацию фаервола.
    Ответ написан
  • Почему долго выполняется bat файл из 2 строк?

    @res2001
    Developer, ex-admin
    tasklist вообще достаточно долго отрабатывает.
    Добавьте в фильтр еще и фильтрацию по EasyCeiling.exe, чтоб tasklist выдавал только нужные процессы, возможно скорость возрастет.

    Можно попробовать другие инструменты для получения списка процессов, например wmic. Но я сомневаюсь, что что-то другое будет сильно быстрее.
    Ответ написан
    Комментировать
  • Как обеспечить консистентность при чтении?

    @res2001
    Developer, ex-admin
    При записи брони в селекторе дополнительно проверяйте условие, чтоб место все еще было доступно.
    Ответ написан
    1 комментарий
  • Как решить проблеу с установкой vcredist_x86.exe?

    @res2001
    Developer, ex-admin
    На последнем скрине версия х64, а вам, судя по всему, нужна х86. Скачивается по той же ссылке. Обе версии могут быть установлены одновременно.
    Можно попробовать деинсталлировать уже установленную версию 12.0.30501 и установить заново через установщик, скачанный с сайта микрософт. Установщик принудительно запускайте с правами админа.
    Ответ написан
    1 комментарий
  • Программа удаленного доступа к пользовательским компьютерам в крупных распределенных сетях?

    @res2001
    Developer, ex-admin
    Для винды - RDP.
    Можно настроить remote shadow и можно будет видеть удаленный раб.стол пользователя вместе с пользователем.
    Конечно, можно потратить кучу бабла и купить какой-нибудь софт, который умеет делать то же самое, используя этот же механизм. Возможно это даже будет удобнее в использовании.
    Ответ написан
    Комментировать
  • Почему BAT скрипт работает корректно только после второго запуска?

    @res2001
    Developer, ex-admin
    Два момента:
    1. Скобки являются спец.символами в cmd, поэтому их надо экранировать:
    SET PROGRAM_PATH=D:\Program Files ^(x86^)\Notepad++\notepad++.exe

    У меня стоит x64 версия notepad++ поэтому скобки я у себя не проверял.
    2. Когда вы запускаете стороннее приложение из командного файла так как вы это делаете, то cmd ждет завершения этого приложения и только потом продолжает выполнение скрипта дальше.
    Что бы убрать это ожидание запускать нужно с помощью команды start следующим образом:
    start "" "!PROGRAM_PATH!" %%m
    Первые кавычки - это заголовок нового окна, в данном случае не принципиально, т.к. notepad++ установит свой заголовок.

    В целом ваш скрипт у меня заработал, после того как я поправил путь к notepad++ и добавил start.
    Ответ написан
    2 комментария
  • Возможно ли сделать полный RDP?

    @res2001
    Developer, ex-admin
    Облако это совсем не удаленный доступ. Вам все таки нужен просто удаленный доступ.
    RDP для винды самый лучший вариант.
    1.Звук нормально пробрасывается и работает, смотрите в опциях подключения.
    С видео, 3D, играми - гораздо сложнее и простого решения тут нет. Нет его не только в RDP.
    На серверной версии есть RemotFX, он вроде как должен ускорять это. В деле не пробовал, т.к. без надобности.
    2.В серверной версии винды есть веб интерфейс.
    3. Вы имеете ввиду Remote Desktop Gateway? Это серверный продукт. Думаю, что его нельзя поднять на десктопе.
    4, 5. Закрываются использованием ВПН или, возможно, хватит ssh.
    6. В десктопной винде это действие не предусмотрено лицензией, т.к. она однопользовательская.
    Если лицензионность вас не волнует, то можно воспользоваться rdpwrap. Хотя автор пишет, что на этот вопрос нет окончательного ответа.
    7. Тут я не понял :-) вы хотите, чтоб RDP сервер сам от вас устанавливал соединение к себе же? Так не бывает.
    В этом плане вы можете сделать только какое-то оповещение, что сервер снова в инете. Любым подручным средством - пинговать гугл, если удачно - отправляете сообщение на почту, смс, и т.п. Тут скорее всего придется что-нибудь костылить. Но возможно есть и какой-то сторонний софт.
    Ответ написан
    3 комментария
  • Возможно ли обойтись без OpenSSH?

    @res2001
    Developer, ex-admin
    Сделайте промежуточный OpenSSH сервер на линуксе с авторизацией в АД и доступом к виндовым шарам через samba client.
    Ответ написан
  • Можно-ли завернуть UDP трафик в TCP туннель Windows?

    @res2001
    Developer, ex-admin
    Любой вариант ВПН, который умеет создавать туннели по TCP, сделает то что вы хотите.
    Например OpenVPN.
    Ответ написан
  • Как стартануть OpenVPN соединение при старте винды автоматически?

    @res2001
    Developer, ex-admin
    Был опыт - настраивал автостарт через службы, работало нормально.
    Проверьте права доступа на файлы, каталоги. Включите логирование. Сервис стартует скорее всего с правами LocalSystem.
    На сколько помню, там достаточно одну из служб перевести в автозапуск, остальные она сама запустит при необходимости. Название службы сейчас уже не вспомню.
    Если в ручном режиме стартует нормально, то и автоматом то же должно.
    Ответ написан
    Комментировать
  • Правильно ли я понял алгоритм быстрой сортировки?

    @res2001
    Developer, ex-admin
    Алгоритм просмотрел бегло - похоже на правду.
    обьясните пожалуйста почему тут такая запись

    Я бы написал так:
    int separator = L + (R - L) / 2;
    Впрочем, обе записи эквивалентны, но мой вариант понятней.
    Подразумевается, что L может быть любым 0 <= L < R.
    Предложенные вами варианты дают не правильный результат при L > 0. Проверьте.
    separator - целочисленный индекс середины заданного диапазона
    Ответ написан
    Комментировать