• Какие способы общения есть между серверным и клиентским приложением?

    @res2001
    Developer, ex-admin
    Общение по сети обычно идет через сокеты по TCP или UDP. Практически все API и протоколы более высокого уровня, используют этот транспорт.
    В винде можно использовать DCOM. Он, конечно, то же использует сокеты и TCP/IP, но это скрыто от программиста. Под никсами то же есть похожие механизмы RPC, но они не встроены в ОС.
    Ответ написан
  • Можно ли изменить размер окна программы и расположение его с помощью батника?

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

    @res2001
    Developer, ex-admin
    Проект на Qt!
    Если там нет чистого WinAPI кода и вы не используете других сторонних не кроссплатформенных библиотек, то проект должен собираться на любой платформе, куда портирован QT (и другие используемые библиотеки).
    Ответ написан
    Комментировать
  • Есть ли где чёткая инструкция по работе с библиотекой sqlite для C++?

    @res2001
    Developer, ex-admin
    Черт знает где вы ищите. На сайт sqlite пробовали заходить?
    Для ВСЕХ инструментов типа баз данных есть родные (от производителя инструмента) клиентские библиотеки как минимум для Си. Т.к. эта библиотека открывает возможности для использования инструмента на любых других ЯПах. Нет смысла создавать инструмент, которым не возможно пользоваться.
    Для плюсов, как правило, делают легкую обертку над Сишной библиотекой, поддержка остальных ЯПов подтягивается потихоньку.
    SQLITE: https://www.sqlite.org/cintro.html
    Ответ написан
    8 комментариев
  • Как запустить arch linux на beaglebone black?

    @res2001
    Developer, ex-admin
    BBB не видит карту

    По ссылке описан raw вариант загрузки с карты памяти.
    Есть еще и вариант загрузки с загрузочного FAT/FAT32 раздела. Но, возможно его надо включать какими-то переключателями на плате.
    Там просто размещаете файлы загрузчика и ядра в корне раздела.
    Вообще у Texas Instruments есть своя сборка Линукс. Используйте ее, а не arch. Там же можете найти описание создания загрузочного носителя для линукс (конечно, применительно к своему дистру). У них толковая дока.
    Ответ написан
  • Хочу стать C++ разработчиком но поможет ли Unity?

    @res2001
    Developer, ex-admin
    На реальной работе вам придется изучать и использовать много разных сторонних библиотек. Практически нигде не используется "голый" ЯП. Так что начните это делать прямо сейчас. Это будет хорошей практикой для вас.
    Ответ написан
    3 комментария
  • Что делает эта команда: gcc -I my_dts -E -nostdinc -undef -D__DTS__ -x assembler-with-cpp -o system.dts system-top.dts?

    @res2001
    Developer, ex-admin
    my_dts - подкаталог в текущем каталоге, там gcc будет искать дополнительные файлы, которые используются в директиве #include, компилируемого файла, т.к. my_dts это параметр ключа -I. Если такого каталога нет - gcc никак об этом не сообщит, но возможно будут какие-то ошибки при сборке.
    Опция -E заставляет прервать компиляцию после обработки препроцессором.
    Т.е. в данном случае просто используют препроцессор Си для файлов dts. DTS - device treee source. В DTS файлах описывают железо на котором загружается ОС. Они используются, например, в u-boot, в ядре линукс и т.п.
    Выходной файл задается опцией -o.
    Ответ написан
    Комментировать
  • Как собрать и агрегировать данные из разных часовых поясов?

    @res2001
    Developer, ex-admin
    Переводите все местное время в какой-то единый стандарт. Лучше всего подходит UTC. Везде в запросах оперируйте UTC, только при выводе на экран конвертируйте обратно в свое локальное время.
    UTC использовать проще всего, чем скажем MSK, т.к. конвертация из локального времени в UTC уже встроена в язык.
    Ответ написан
  • Стоит ли изучать c++11?

    @res2001
    Developer, ex-admin
    14 - это по сути исправление ошибок и неточностей 11. Так что их можно объединить.
    Стоит учить как минимум 11/14.
    В любом случае база языка остается неизменной. Так что на самом деле можно не сильно тянуться к самым современным стандартам. С ними можно познакомится позже, когда освоите основной материал.
    Толстые учебники сильно отстают по стандартам.
    Ответ написан
    Комментировать
  • Нужен ли PoE-Инжектор?

    @res2001
    Developer, ex-admin
    В документации об этом есть.
    Судя по всему, сплиттер не нужен, он сам умеет запитываться от Ethernet по порту LAN0.
    Ответ написан
    Комментировать
  • Выполнение команды при запуске cmd?

    @res2001
    Developer, ex-admin
    vcvars32.bat идет в составе MSVS для установки переменных окружения.
    Так же MSVS устанавливает в меню пуск несколько ярлыков для запуска командной строки, где уже установлены все нужные переменные окружения. Делается это примерно так:
    cmd.exe /K vcvars32.bat
    Ключ /K не дает закрыться cmd.exe после выполнения команды переданной в параметре. Команду привел схематично, можете точную команду посмотреть в ярлыке MSVS. Возможны и другие параметры, которые передаются уже в vcvars32.bat.
    Кстати, есть еще и vcvars64.bat.
    Нет смысла всегда запускать vcvars32.bat при старте cmd. Просто используйте ярлык от MSVS для запуска командной строки.
    Ответ написан
    Комментировать
  • Из за чего в консоли вместо русского языка выводятся вопросительные знаки?

    @res2001
    Developer, ex-admin
    Это практически первый вопрос, которым задаются юниоры С++, когда пытаются запустить свою первую консольную программу под виндой.
    Ответов на него тут уже была целая пачка.

    Суть в том, что в виндовой консоли может быть 2 русские кодировки (cp866 и cp1251) (не уверен, но может быть консоль винды научилась уже нормально работать с UTF8, если научилась, то считайте, что добавилась еще одна кодировка). Причем по умолчанию используется cp866. Кодировку консоли можно менять из самой консоли или программно.
    При выводе текста в консоль никаких преобразований кодировок не происходит. В какой кодировке у вас написаны исходники - та и выводится. И если кодировка консоли и кодировка исходников не совпадают, то будет не читабельный текст.

    Самый оптимальный и самый сложный вариант - в программе узнать кодировку консоли и перед выводом конвертировать текст в эту кодировку. Так же обратную операцию производить при вводе. В этом случае исходники программы лучше всего писать в UTF8 и использовать wchar_t.

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

    Самый надежный вариант - не используйте русский в консольных программах - только английский. Сомневаюсь, что вам придется когда-то писать профессиональные консольные утилиты, которые бы умели адаптироваться к разным кодировкам, так что, возможно, нет смысла углубляться в эту тему. В GUI приложениях этой проблемы нет.
    Ответ написан
    1 комментарий
  • Тихая установка (unattended install). Как установить программу BlackVue Viewer в тихом режиме?

    @res2001
    Developer, ex-admin
    Если сам установщик не умеет удалять (обновлять) предыдущие версии, то делайте это за него. Что вам мешает проверить установлена ли уже предыдущая версия и так же по тихому ее удалить.

    Запустите установщик с ключом /? - возможно у него есть страница справки.
    Если нет ищите ключи установщика в документации или на сайте производителя, может быть на форуме разработчиков и т.п.
    Ответ написан
    Комментировать
  • Как добавить библиотеку в qt creator?

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

    Обычно приличные библиотеки ставят в своем dev пакете и средства для поиска/использования себя. В линуксе это обычно конфигурационный файл для pkg-config. В cmake использовать pkg-config можно с помощью одноименного модуля.
    Если библиотека поддерживает cmake, то она ставит поисковые скрипты для find_package.
    Ответ написан
    2 комментария
  • Как располагаются в памяти элементы массива обьектов класса?

    @res2001
    Developer, ex-admin
    Отличный вопрос!

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

    Как эта проблема решается в с++?

    С++ не решает эту проблему. Эту проблему решаете вы как программист.
    Самое простое что приходит в голову - хранить в массиве не сами объекты, а указатели на них или ссылки.
    Так же было бы не плохо запретить возможность создавать экземпляры базовых классов, тогда у вас в принципе не будет возможности создать подобный массив.
    Ответ написан
    Комментировать
  • Как создать свой скрытый значок?

    @res2001
    Developer, ex-admin
    Область справа на панели задач это "трей". И это не область скрытых задач. В винде есть специальный API для того, что бы приложение могло размещать свою иконку в трее. Приложение должно само уметь это делать (или это можно сделать с помощью третьего приложения см. ответ benipaz ). cmd.exe такого делать не умеет.

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

    У меня есть bat скрипт запускающийся при старте Window 10

    Почему бы не завершать этот стартовый скрипт? Тогда он не будет висеть в панели задач.
    Другой вариант - можно запустить этот скрипт из планировщика по событию логин пользователя. Задания из планировщика по умолчанию выполняются в скрытом режиме.
    Так же есть другой вариант - запустить батник в скрытом режиме через промежуточный небольшой скрипт на JavaScript или VBScript. Примеры легко гуглятся. При этом можно внедрить JavaScript скрипт в батник таким образом физически оба скрипта будут находится в одном файле. Технику внедрения JavaScript скрипта в батник то же можно нагуглить, ничего сложного там нет.
    Ответ написан
  • Если в вакансии указано "наличие профильного технического образования", то важно ли, какой вуз заканчивать - престижный или региональный?

    @res2001
    Developer, ex-admin
    Если бы им нужны были выпускники какого-то конкретного вуза (и факультета) они бы об этом так и писали. Такие узкоспециализированные вакансии то же встречаются.
    Ответ написан
    Комментировать
  • Локальный пользователь System. Зачем (и нужны ли) ему полные NTFS права на пользовательские папки?

    @res2001
    Developer, ex-admin
    что это сделано для процессов, работающих от имени данного пользователя

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

    Многие службы и задания из планировщика запускаются от имени SYSTEM. В каталоге пользовательского профиля не стоит удалять SYSTEM там где он есть по умолчанию. В каталогах, которые вы создаете самостоятельно вне профиля вы можете регулировать права как вам угодно.
    Ответ написан
    Комментировать
  • Как работает эта рекурсия?

    @res2001
    Developer, ex-admin
    По идее в foo с одним параметром перед return нужно добавить строку:
    std::cout << sizeof(value) << std::endl;
    Тогда будут выводится все параметры.
    Смысл рекурсии в том, что на каждом шаге выводится первый параметр и убирается из списка, обрезанный список параметров передается дальше по рекурсии. Пока параметров несколько вызывается функция со списком, когда параметр становится один (последний), вызывается foo с одним параметром и рекурсия завершается.
    Сейчас у вас foo с одним параметром не выводит ничего, поэтому последний параметр как бы игнорируется.
    Ответ написан
    Комментировать
  • Как сменить язык терминала?

    @res2001
    Developer, ex-admin
    В языковых настройках есть такая штука, как язык по умолчанию для не Unicode программ. Попробуйте тут поставить английский. Иногда, после обновлений, эта настройка слетает в вариант по умолчанию.
    Вообще установите язык интерфейса винды на английский - это решит проблему в корне.
    Ответ написан
    1 комментарий