• Как определить, что утекает память? Как получить размер памяти, занимаемой экземпляром класса?

    @res2001
    Developer, ex-admin
    1.Кроме бесплатного valgrind, есть еще intel vtune работает на порядок быстрее, но стоит денег.
    2.sizeof(). Но он выдаст размер только внутренних членов данных класса. Если у вас в классе дополнительно выделяется динамическая память, то sizeof это не учтет. Кроме вас никто не знает сколько памяти жрет класс и как ее правильно посчитать.
    Ответ написан
  • Как узнать содержимое трафика с помощью сниффера?

    @res2001
    Developer, ex-admin
    Снифферы не предназначены для расшифровки трафика.
    Продвинутые снифферы помогут разобрать какой-либо известный открытый протокол (HTTP, SMTP, ...). Не факт, что снифер понимает протокол обмена вашего конкретного мессенджера.
    С шифрованным протоколом сниффер ничего сделать не сможет.
    Максимум - записать трафик в файл, а дальше вы уже чем-то другим его расшифровывайте.
    Перехватив трафик мессенджера вы можете увидеть в открытом виде или нет передается текст сообщения.
    То же самое можно сделать проанализировав исходный код мессенджера, если он доступен.

    PS: В общем случае, не зная ключей расшифровывать современную криптографию бесполезно - на это уйдет не одна сотня или тысяча лет. Для того криптографию и придумали.
    Ответ написан
    Комментировать
  • Странные ошибки Windows server 2003R2, куда копать?

    @res2001
    Developer, ex-admin
    Скорее всего активно дохнет жестяк.
    Закопайте труп.

    Все когда-нибудь ломается, даже если работает практически автономно.
    Ответ написан
    Комментировать
  • Как правильно прийти к решению? Программирование на С?

    @res2001
    Developer, ex-admin
    2.потеря данных происходит. Пустяк или нет - зависит от задачи. В вашем случае пустяк, в других - нет.
    Все вещественные константы в вашем коде являются double, поэтому все ваши переменные при вычислениях переводятся в double, вычисляется результат как double и переводиться во float для сохранения результата.
    Чтоб убрать сообщение:
    - все переменные сделайте double или
    - ко всем константам добавьте суффикс f, например: 1.f - тогда константы будут float и все вычисления будут происходить над float - потерь не будет, потому что не будет конвертации типов.
    3.fabs - для вещественных чисел, abs - для целых. fabs определяется в math.h, abs - stdlib.h
    4. Обычно в #include для своих хидеров используют кавычки, для системных/библиотечных - <>. Их разница в том, что в "" поиск заголовка начинается с каталога где находится текущий компилируемый файл, потом по всем остальным, известным компилятору местам. Для <> - поиск в текущем каталоге не производится, поэтому ваши собственные заголовки компилятор может не найти (если не указать опцию -I).
    https://en.cppreference.com/w/c/preprocessor/include
    Ответ написан
    Комментировать
  • Как пробросить тоннель через компьютер под Win7?

    @res2001
    Developer, ex-admin
    По идее, достаточно включить маршрутизацию на В (настройка в реестре, возможно уже включена) и настроить В на всех компах в его подсети шлюзом для подсети А (прописать маршрут до А через В).
    Ответ написан
  • C++ ошибка при выполнении программы, как ее исправить?

    @res2001
    Developer, ex-admin
    Из-за того что в первом и втором цикле условия разные, у вас выделяется массив строк (a[]) меньшего размера, чем происходит к нему обращений во втором цикле. Отсюда - выход за границы массива и сбой программы.
    Ответ написан
    Комментировать
  • Почему очень долгая печать с терминального сервера?

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

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

    Если tcpReply() возвращает строку с завершающим нулем, то преобразовать ее в String можно просто передав ее в конструктор:
    String data(reply);
    Ответ написан
    Комментировать
  • Как восстановит файл xls?

    @res2001
    Developer, ex-admin
    Из бэкапа.
    Не ведитесь только на вымогательства трояна, обычно это ни к чему не приводит.
    Ответ написан
    1 комментарий
  • Как восстановить Win10 на одном HDD, и удалить Win10 на другом, в условиях связи их разделов?

    @res2001
    Developer, ex-admin
    Вам нужно на первом диске сделать в ручную и EFI раздел и раздел восстановления. Если потребуется, нужно будет уменьшить существующие разделы, чтоб выделить место для этих двух новых разделов.
    Как правильно создать эти разделы ищите в гугле, информация есть.
    На новый EFI раздел скопируйте все с EFI раздела второго диска. Раздел восстановления не трогайте.
    Если после этого с первого диска комп не загрузится пробуйте bootrec.exe /fixboot с загрузочной флэшки, должно сработать, т.к. нужные разделы на диске будут.
    Ответ написан
    1 комментарий
  • Установка MinGW ― копирование?

    @res2001
    Developer, ex-admin
    Можно.
    Достаточно на новой системе прописать в переменной окружения PATH путь в каталог bin mingw.
    Дополнительно можно настроить переменные: MINGW_HOME и возможно MINGW_ALT_HOME
    Они должны содержать путь в каталог установки MINGW.
    MINGW_ALT_HOME - не обязательна, можно использовать, если вы держите 2 варианта mingw для сборки х32 и х64 приложений. Один (основной) прописываете в MINGW_HOME другой в MINGW_ALT_HOME.

    Посмотрите что добавляет туда родной установщик, чтоб было понятней.

    Я пользуюсь msys2 + mingw, то же легко переносится. Когда-то это делал. Но сейчас пришел к выводу, что это не имеет большого смысла. Сейчас переношу только домашний каталог пользователя msys2, его можно настроить в любое место в файловой системе.
    Для msys2 дополнительно можно настроить переменную MSYS_HOME, она должна содержать путь в каталог usr msys2.

    Эти переменные окружения используют IDE для нахождения установленных экземпляров mingw. Если собирать из командной строки, то достаточно PATH.
    Ответ написан
    Комментировать
  • Почему жалуется на преобразование double > float?

    @res2001
    Developer, ex-admin
    double у вас константы в выражении. По умолчанию вещественные константы - double. Поэтому все остальные компоненты выражения преобразовываются в double, а при присваивании необходимо снова преобразовать во float с потерей точности, об этом и сообщает компилятор.
    Чтоб сделать константы float, нужно использовать суффикс 'f': 9.0f. Тогда все выражение будет вычисляться во float.
    Ответ написан
    2 комментария
  • Не подключается по рдп с win 10 к серверу 2008 R2, Баг?

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

    @res2001
    Developer, ex-admin
    Регулярно делать бэкап - лог автоматически очищается, после бэкапа.
    Ответ написан
    6 комментариев
  • Как уменьшить время обработки запроса?

    @res2001
    Developer, ex-admin
    • Посмотрите план выполнения.
    • Индекс на t.external_uids и на t.id есть?
    • Замените exist на in.
    • 400000 - не тот объем, чтоб MS SQL на нем приседал. Может быть у вас не хватает памяти для SQL сервера и/или диски медленные?
    Ответ написан
    Комментировать
  • Почему так мало оперативной памяти?

    @res2001
    Developer, ex-admin
    Начиная с Вин7 (возможно с Висты) винда жрет практически всю доступную память под кэш.
    Но это не значит, что ее не хватает, когда будет нужно винда поделится, если будет чем.

    На что у вас зарезервировано аппаратно 4 Гб? Это много, имхо.
    Про аппаратное резервирование почитайте тут.
    Общие рекомендации - обновить БИОС, поиграть с настройками БИОС, обновить драйвера - взять свежие с сайта производителя железа.
    Ответ написан
  • В какой директории хранить файл для считывания из программы?

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

    @res2001
    Developer, ex-admin
    Вы путаете терминальный доступ и виртуальные машины.

    На линуксе вы можете предоставлять терминальный доступ только к линуксу (ssh, VNC). ssh - только консоль, VNC - тормозной, никогда не использовал его для работы пользователей, думаю счастья у них не прибавиться. Хотя в локальной сети, возможно, будет нормально работать.

    На гипервизоре под линуксом вы можете поднять любую ОС в качестве ВМ и раздавать доступ к ней. Поднимите нужное количество виндовых ВМ, подключайтесь к ним по RDP.
    Сервер с гипервизором не стоит использовать в других целях (SQL, Дело, ...) - просядет производительность и ВМ и других служб.
    Кстати: разве "Дело" работает на линуксе? На сколько помню, там исключительно винда, т.к. .Net/IIS/MSSQL.
    Ее то же будете поднимать на виртуалке?

    Вам было бы удобней поднять на сервере Windows Server в качестве терминального сервера и использовать RDP для подключения клиентов. Но Windows Server стоит денег и лицензии на терминальное подключение то же не бесплатные.
    Если сервер достаточно мощный, а одновременно работающих клиентов относительно не много и у них "легкие" задачи, то на сервер можно повесить и дополнительный функционал.

    Если будете покупать железный сервер, то рекомендую сразу же включить в комплект Windows Server и лицензии для терминального подключения. Так бывает проще протащить покупку нужного ПО - вместе с железом без которого обойтись нельзя.

    На счет проброса USB портов с ключами шифрования - могут быть проблемы. Только вариант с Windows Server + RDP + локальный USB порт сервера для ключей дадут гарантию работоспособности. Но часто по разным причинам невозможно использовать порты сервера. Нужно сначала тестировать ту конфигурацию, на которой вы остановитесь.
    Ответ написан
    2 комментария