Задать вопрос
  • Стоит ли переходить на С?

    @res2001
    Developer, ex-admin
    Согласен с предыдущими ораторами, что язык под задачу, а не наоборот.

    Если хочется низкого уровня, то сосредоточьтесь на С++. Сам по себе Си - язык очень компактный и простой. Изучая С++ для понимания внутренних механизмов уделите внимание указателям, адресной арифметике, работе с нативными массивами и строками (не std::valarray и std::string) - то же самое будет и в Си.
    Когда пишешь на Си очень не хватает классов и иногда шаблонов из С++ - толковой альтернативы в Си нет.
    Если когда-то придется участвовать в проекте на Си, то перейти с С++ будет достаточно просто. Адаптироваться к нюансам и привыкнуть к стандартной библиотеке Си можно быстро.
    Все это я к тому, что необходимости отдельно изучать Си нет - освоив на хорошем уровне С++ вы сможете начать писать на Си, когда будет необходимо. Но наоборот - не выйдет.
    Ответ написан
    1 комментарий
  • Как перенести пользователя и программы из одной windows 10 в другую?

    @res2001
    Developer, ex-admin
    1.Если на первом диске есть ценная информация (помимо софта и пользователей), то ее надо оттуда скопировать в более надежное место. Для этого можно снять полный образ диска, так же можно переносить отдельные файлы.
    2.Нужно определиться - винда не грузится из-за проблем с диском или нет. Проверьте диск любым тестом поверхности с загрузочного носителя.
    3.Если диск целый, то можно оставить систему на этом же диске. Для восстановления работы накатите винду поверх в режиме "обновления". Она подхватит весь софт и пользователей.
    4.Если с диском проблемы, то лучше поставить винду на второй диск с нуля и перенести еще живые данные с первого диска (или резервной копии сделанной в п.1) на второй.
    Ответ написан
  • Как запустить модуль на винде?

    @res2001
    Developer, ex-admin
    Возможно в винде не установлен питон, или при установке питона не были прописаны ассоциации файлов или они слетели уже в процессе.
    В общем случае запускайте так:
    <путь до питона>\python.exe <путь до файла>\file.py

    Питон, конечно, должен быть установлен, причем нужной версии: питон2х не совместим с питон3х.
    Ответ написан
    Комментировать
  • Как получить ссылку на объект?

    @res2001
    Developer, ex-admin
    Правильно:
    const C& c

    объект создавался оператором new, то передаётся значение указателя, а если статически то ссылка

    Нет - в любом случае передается ссылка. Если у вас есть указатель, а передать надо ссылку, то вы должны разыменовать указатель.
    Внутри функции это просто число-адрес памяти, где расположен объект?

    Лучше не заморачиваться этим вопросом. На уровне ассемблера нет никаких ссылок, поэтому по факту ссылки - это те же завуалированные указатели, у которых на уровне компилятора ограничен функционал для более безопасного использования.
    Указатель - это целое число. Размер указателя не зависит от типа, на который он указывает, зависит только от платформы (в х64 указатели 64 битные, а в х32 - 32 битные).
    Ответ написан
    Комментировать
  • Как посчитать несколько count() в секции select используя обозначения через as?

    @res2001
    Developer, ex-admin
    Поля count_id1 и count_id2 видны снаружи select, а внутри нет.
    Например, если этот select завернете как вложенный запрос, то в верхнем select уже можно обращаться по этим именам:
    select round(sum(count_id1) /  sum(count_id2)  * 100, 1) as percent
    from (
    select  
     ...
    count(table.id1) as count_id1,
    count(table.id2) as count_id2,
    
    from table
    ...
    )
    Ответ написан
    1 комментарий
  • Почему n^3 работает быстрей чем 2^n?

    @res2001
    Developer, ex-admin
    Если рассуждать прямолинейно, то N^3 требует 3 операции умножения (O(3)) для любых N.
    При этом если N > 3, то 2^N будет требовать >3 операций умножения (N операций умножения, если делать совсем уж тупо).

    Но если N - целое и 2^N реализовывать сдвигом, а не умножением, то работать будет ооочень быстро - O(1) для всех N в допустимом диапазоне.
    Ответ написан
    2 комментария
  • Создать проверку существуют ли файлы или папки в определенном каталоге?

    @res2001
    Developer, ex-admin
    Начну с конца: cmd не поддерживает работу с датами ни в каком виде.
    Дату последнего изменения файла получить можно, но это будет дата в текстовом виде. Дальше нужно вручную выделять все составляющие даты и с помощью скудных возможностей set /a и кучи if вычислять была она позже 4 часов или нет. Сделать можно, но это будет ... "не технологично" :-)
    В свое время я писал скрипт на bat переводящий дату в timestamp и обратно. Могу поискать, если заинтересует.
    Я бы предложил вам использовать скрипт на powershell, vbs, js - все они умеют работать с датами. Реализовать на них вашу задачу довольно просто.

    Проверка существования файлов и подпапок в заданной папке:
    set "indir=c:\papka"
    :: Проверка существования файлов:
    for /f "tokens=* delims=" %%a in ('dir /b /a-d "%indir%\*" ') do (
      echo.Есть файл: %%~fa
    )
    :: Проверка существования каталогов:
    for /f "tokens=* delims=" %%a in ('dir /b /ad "%indir%\*" ') do (
      echo.Есть каталог: %%~fa
    )


    Если служба "отваливается" путем завершения процесса службы, то проще проверять существует ли запущенный процесс с помощью tasklist и ее фильтров. Смотрите tasklist /?
    Ответ написан
  • Не устанавливается сетевой драйвер на Windows Server 2016 Standard?

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

    @res2001
    Developer, ex-admin
    На ноутах со сдвоенными видеокартами, дискретка включается когда нужна повышенная производительность (в играх), в остальных случаях работает встроенная.
    У меня lenovo z510 с похожей конфигурацией dxdiag на закладке "Display" показывает встроенную, но на закладке "Render" - NVidia. ОС: Вин10.
    Ответ написан
    Комментировать
  • Два шлюза в одной сети?

    @res2001
    Developer, ex-admin
    Два шлюза по умолчанию с разными метриками на клиентах.

    PS: Было бы интереснее в вашем случае замутить балансировку каналов с обеспечением отказоустойчивости. Это уже более сложный вопрос - либо покупать железку, которая это умеет; либо самому разбираться с вопросом.
    Ответ написан
    Комментировать
  • Как различить юзер программист или нет ( то есть в кавычках, который мало что понимает)?

    @res2001
    Developer, ex-admin
    Да, на github можно создавать клоны чужого софта и вообще заливать все что угодно.
    Если ментор дает дельные советы, которые помогают вам с решением задач, значит он как минимум знает о чем говорит (или умеет гуглить лучше, чем вы).
    Если с ответом затрудняется или его советы не помогают с решением задач, то скорей всего он сам новичок или не владеет данной темой, да еще и гуглить не умеет или ленится.
    Ответ написан
  • Удаленный рабочий стол mstsc не пущает из под win10, как решить?

    @res2001
    Developer, ex-admin
    Кроме не рассматриваемого варианта эта ошибка может быть вызвана следующими причинами:
    1.удаленному пользователю на сервере не назначен пароль;
    2.пользователь не является администратором или пользователь не входит в группу "Пользователи удаленных рабочих столов".

    Вообще странно, что пришлось выключить "Network Level Authentication". Вариант с выключением этой настройки предназначен для старых клиентов под WinXP. В Вин10 клиент точно это поддерживает (собственно в Вин7 уже это работало).
    Ответ написан
  • Возможно ли удалённое изменение настроек сетевого адаптера?

    @res2001
    Developer, ex-admin
    Это не только доступ к файлам и принтерам - это практически вся сеть винды. Поэтому при отключении у вас машина выпадает из сетевого окружения. При этом стандартные средства винды для удаленного управления то же работать не будут (wmic, netsh, sc, ...).
    Включите на машине удаленный рабочий стол, ручками заходите и включайте галку обратно.
    Другие варианты: установить любой другой сторонний вариант удаленного доступа: ssh, VNC, ...
    В винде есть встроенный телнет сервер (нужно включать дополнительно из компонентов системы), он работает независимо от "Общего доступа", можно заюзать его. Но телнет - не безопасный протокол - все пароли будут в открытую ходить по сети, поэтому я его не рекомендую использовать.

    Вообще, имея включенный "Общий доступ" или имея удаленный доступ (RDP, ssh, VNC, ...) к удаленной машине можно с помощью netsh менять настройки сети.
    Ответ написан
    6 комментариев
  • Как перенести систему на Win 10 на чистый SSD?

    @res2001
    Developer, ex-admin
    Согласен с @POS_troi
    Ваша ошибка в том, что кроме раздела под систему винда, начиная с Висты делает для себя еще другие дополнительные разделы, скрытые от обычного пользователя. В Висте и Вин7 был 1 дополнительный раздел, а в Вин10 их уже 2. Если вы создаете раздел, который занимает весь диск, то винда не может создать свои дополнительные разделы, отсюда и ошибка.

    На счет загрузки с флэшки - я пользуюсь этой сборкой.
    Грузится как в UEFI, так и в Legacy режимах. Есть нормальная инструкция по созданию загрузочной флэшки из образа.
    Ответ написан
    Комментировать
  • Не могу удалить папку владельцем которой являюсь?

    @res2001
    Developer, ex-admin
    Папка может не удалятся, например, потому что она открыта в другом процессе.

    Вообще все работает противоположно тому, как вы описываете.
    Проведите реальный эксперимент и убедитесь, что разграничение прав есть.
    Ответ написан
    2 комментария
  • Несколько вопросов по сетевому программированию в C++?

    @res2001
    Developer, ex-admin
    1. Используйте openssl, там уже все придумано за вас. Если делаете финансовое ПО для работы в РФ, то видимо потребуется ГОСТовое шифрование. Такие варианты openssl то же есть, с сертификацией и прочими плюшками, конечно не бесплатно.
    2.Тут трудно что-то сказать не зная специфики задач, которые вы будете решать.
    В общем случае, поток на соединение - если соединений относительно не много; иначе - асинхронный ввод/вывод. Но могут быть и другие факторы, влияющие на выбор архитектуры.
    В асинхронном варианте сам ввод/вывод можно делать в одном потоке, а для обработки держать пул потоков обработчиков. Задания от потока ввода/вывода к обработчикам передавать через очередь, результаты аналогично.
    Ответ написан
    Комментировать
  • Чем/как можно бэкапить на несколько офисных ПК?

    @res2001
    Developer, ex-admin
    Идея так себе, имхо.
    1.Пользователи будут иметь доступ к резервным копиям. Понятно, что можно ограничить права и т.д и т.п., но вы уверены, что все сделаете правильно? А главное, что будете в процессе эксплуатации все делать правильно?
    2.Процесс восстановления в такой схеме видится просто сказочный.
    3.Слишком сложная схема, слишком много точек отказа, задолбаетесь ее сопровождать.
    Ответ написан
  • Как правильнее восстановить Windows 10?

    @res2001
    Developer, ex-admin
    Незачем ее восстанавливать.
    С помощью загрузочного носителя слейте всю необходимую информацию и переустановите винду любым способом.
    Если ценной информации на диске нет, то просто переустановите винду.

    На будущее: во время установки разбейте диск минимум на 2 раздела. первый раздел в 100 Гб отдайте под систему, на втором разделе - все остальное. Сразу после установки винды перенесите пользовательский профиль на второй раздел. Таким образом в следующий раз вам не придется ничего сливать, можно будет сразу переустанавливать, т.к. все данные останутся на втором разделе.
    Ответ написан
    2 комментария
  • Проблема с СОКЕТАМИ в Python не по локальной сети?

    @res2001
    Developer, ex-admin
    Внешний IP, скорее всего на роутере, а на роутере - NAT. Нужно настроить проброс портов на комп внутри локальной сети.
    Возможно, что внешний IP вообще у провайдера, а вам пров. выдает приватный адрес. В этом случае нужно за деньги покупать белый адрес у оператора.
    Ответ написан