Форум программистов, компьютерный форум, киберфорум
Rius
Войти
Регистрация
Восстановить пароль
Старый
Рейтинг: 2.50. Голосов: 2.
Сага о X, Y и Z...
Запись от Rius размещена 13.08.2020 в 20:09
Показов 2244 Комментарии 0

Однажды Новичок захотел сделать X. Но поскольку Новичок был новичком, X с ходу у него сделать не получилось...

Ну, бывает, ничего в этом плохого нет: все мы были когда-то новичками. Чтобы решить проблему, Новичок решил воспользоваться форумом по программированию. Вы думаете...
Аватар для Rius
Старый
Рейтинг: 4.67. Голосов: 3.
Велосипедим обновлятор
Запись от Rius размещена 26.04.2020 в 22:34
Показов 3799 Комментарии 2

Как организовать автообновление десктопной программы.

Безотносительно языка программирования.

Заранее, прежде чем приступать к кодингу, должно быть решено несколько вопросов:
  1. В каком виде поставлять обновления?
  2. Как проверять, что существует новая версия?
  3. Когда проверять, что существует новая версия?
  4. Когда начинать загрузку?
  5. Как загружать?
  6. Когда устанавливать?
  7. Как устанавливать?
  8. Что делать с данными?

В каком виде поставлять обновление?
  • Если
...
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 1.
Go to MISRA C
Запись от Rius размещена 03.06.2019 в 11:03
Показов 2545 Комментарии 4

Для справки.
Что по этому оператору сказано в стандарте MISRA C (версии 2012), применяемом, чтобы самолёты не падали в автомобильной, аэрокосмической, медицинской отраслях.

Правило 15.1 Оператор goto не должен использоваться.

Обоснование
Неограниченное использование goto может привести программы к тому, что они станут неструктурироваными и чрезвычайно сложными...
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 8.
Относительное зло или когда пути неисповедимы
Запись от Rius размещена 03.08.2018 в 08:24
Показов 32439 Комментарии 24

Часто встречаются такие и подобные вопросы:Объединяет их одно: автор проблемного кода использует относительные пути.

Что такое относительный путь? Это путь к файлу/каталогу (далее просто к файлу) в сокращённом виде, т.е. без...
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 2.
Русификация вывода компилятора MSVC в QtCreator
Запись от Rius размещена 20.02.2018 в 07:38
Показов 6160 Комментарии 2

VS 2017 Community русская, Windows 10 Home x64 русская,
QtCreator 4.5.1, MSVC 2017

Вариант на BAT-файле
  1. Берём статическую (чтобы не искать потом библиотеки зависимостей) сборку iconv для Windows. Например, из проекта mlocati/gettext-iconv-windows, gettext0.19.8.1-iconv1.14-static-64.zip.
  2. Куда-нибудь распаковываем.
  3. Переходим в каталог с jom.exe, например c:\Qt\Qt5.10.1\Tools\QtCreator\bin\ .
  4. Создаём файл jom.bat, в котором вызываем jom.exe и передаём его вывод в iconv
...
Миниатюры
Нажмите на изображение для увеличения
Название: 1.PNG
Просмотров: 942
Размер:	11.2 Кб
ID:	4682   Нажмите на изображение для увеличения
Название: 2.PNG
Просмотров: 859
Размер:	26.6 Кб
ID:	4683   Нажмите на изображение для увеличения
Название: 2018-02-20_21-33-56.png
Просмотров: 936
Размер:	18.8 Кб
ID:	4684  

Нажмите на изображение для увеличения
Название: 2018-02-20_21-34-22.png
Просмотров: 797
Размер:	8.3 Кб
ID:	4685  
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 1.
Команда протокола формата запрос-ответ
Запись от Rius размещена 08.12.2017 в 13:45
Показов 2659 Комментарии 0

Минимальная писанина при применении.
Простое добавление новых команд.
Строго типизированные результаты без необходимости дополнительного приведения типов.

Использование:
C#
1
2
3
4
5
6
7
8
9
10
using ConsoleAppRequestAnswer.Driver;
using System;
 
namespace ConsoleAppRequestAnswer
{
    class Program
    {
        static void Main(string[] args)
        {
            IDriver driver = new Driver.Driver();
...
Вложения
Тип файла: zip ConsoleAppRequestAnswer.zip (10.3 Кб, 257 просмотров)
Аватар для Rius
Старый
Рейтинг: 3.67. Голосов: 3.
Контакты для вопросов по написанию программ/домашек/курсовых/дипломных
Запись от Rius размещена 19.05.2017 в 17:44
Показов 3477 Комментарии 7

Итак, если вы нашли меня на форуме по вопросам программирования и решили обратиться по поводу:
  • Помощи на экзамене;
  • Срочной курсовой, которую надо сдавать вот уже завтра;
  • Программы для дипломной работы;
  • Домашней работы;
  • И т.д. и т.п. ...

Вам нужно знать следующее:
  • В интернетах достаточно информации для самостоятельного изучения. Такой как:
    • Книги;
      По вопросам C# почти всё можно найти в этих источниках.
    • Google/Yandex;
    • Форумы;
    • И т.д.
    Ответы на все ваши
...
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 1.
Как встроить DLL (.Net) внутрь EXE (.Net)
Запись от Rius размещена 21.04.2017 в 18:23
Показов 5696 Комментарии 1

Если возникает ситуация:
  • надо написать программу, решающую некую задачу;
  • есть DLL на .Net (с неуправляемыми DLL всё иначе), которая эту задачу решает;
  • надо взять эту DLL и применить;
  • но так, чтобы никто не догадался, что задача решается чужой DLL-кой, а не нашим кодом.
Либо:
  • Программа состоит из EXE и нескольких DLL;
  • Пользователю надо поставлять этот набор файлов;
  • Пользователь криворук и "лишние"
...
Миниатюры
Нажмите на изображение для увеличения
Название: 2017-04-21_20-18-42.png
Просмотров: 843
Размер:	17.2 Кб
ID:	4227  
Вложения
Тип файла: zip EmbeddedLibrary.zip (12.7 Кб, 441 просмотров)
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 1.
Прикол с плавающей точкой
Запись от Rius размещена 07.04.2017 в 18:07
Показов 2071 Комментарии 0

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
float a = 0;
float b = 0;
float c = a / b;
float g = 1.0f;
 
if (c < g)
{
    printf("c < g \n");
}
else if (c > g)
{
    printf("c > g \n");
}
else if (c == g)
{
    printf("c == g \n");
}
else
{
    printf("c ? g \n"); // << попадаем сюда
}
Связано со сравнением, в котором...
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 1.
Установка и настройка Eclipse, STM32CubeMX под Windows
Запись от Rius размещена 21.02.2017 в 21:30
Показов 10601 Комментарии 0

Показана установка и настройка среды разработки на базе
  • Eclipse IDE for C/C++ Developers;
  • Java SE Runtime Environment;
  • GNU ARM Embedded Toolchain;
  • GNU ARM Eclipse Build Tools;
  • GNU ARM Eclipse plug-ins;
  • STM32CubeMX Eclipse plug in.
А также создание проекта в STM32CubeMX и перенос его в Eclipse CDT. Т.е. использование GNU ARM Eclipse plug-ins вместо ST-шного SW4STM32.

YouTube:
Кликните здесь для просмотра всего текста
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 1.
Вывод текста в шаблоны формата *.docx
Запись от Rius размещена 01.09.2016 в 20:47
Показов 3348 Комментарии 2
Метки docx, ms word, report, отчет

Исходники тут: https://github.com/riuson/wordml-templates
  1. Добавляем к проекту пакет DocumentFormat.OpenXML через NuGet;
  2. Рисуем оставшуюся часть совы.

Определяем класс для пары закладки. Начало закладки и её конец - это отдельные ноды в XML документе.
При создании шаблона необходимо, чтобы эти ноды находились внутри одной вышележащей ноды. Т.е. чтобы закладка покрывала только текстовую строку и не выходила за пределы своего контейнера.
C#
1
        public class
...
Аватар для Rius
Старый
Рейтинг: 3.33. Голосов: 3.
Чтение с последовательного порта без использования Sleep
Запись от Rius размещена 13.08.2016 в 16:32
Показов 21294 Комментарии 3
Метки .net, c#, serialport, uart

В продолжение темы https://www.cyberforum.ru/wind... 73718.html

Если возникает необходимость обмена с внешним устройством по UART, в C# для этого самый очевидный способ - применение System.IO.Ports.SerialPort.

Рассматривается случай, когда ответ от устройства приходит после посылки запроса к нему.
Если с отправкой всё более-менее понятно, то приём реализуется по разному.

Чтение SerialPort с исключениями.
  • Опрос свойства BytesToRead
...
Вложения
Тип файла: zip SerialStreamTest.zip (30.5 Кб, 716 просмотров)
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 1.
Где скачать Windows?
Запись от Rius размещена 05.08.2016 в 18:27
Показов 8006 Комментарии 3

Здесь только оригинальные установщики винды, которые можно скачать у Microsoft напрямую, ничего более.
Проверять по хешам.


Образы ISO.
Официально. От Microsoft. Без вирусов и SMS....
Аватар для Rius
Старый
Рейтинг: 5.00. Голосов: 2.
C# .Net + WindowsForms + плагины
Запись от Rius размещена 05.09.2015 в 17:11
Показов 3503 Комментарии 1

1. Обычный способ сбора плагинов.
  • Рекурсивно в каталоге с приложением ищутся все dll файлы сборок.
  • Найденные по очереди перебираются и загружаются в память с помощью Assembly.LoadFile().
  • Из сборки достаются все существующие в ней типы. Опять же, по одному перебираются и проверяются на наличие интерфейса плагина.
  • Если таковой у типа имеется, тип считается плагином и сохраняется для последующего использования.

Пример кода на GitHub

C#
1
private List<IPlugin> ScanPlugins()
...
Аватар для Rius
Новые блоги и статьи
Java Micronaut в Docker: контейнеризация с Maven и Jib
Javaican 16.03.2025
Когда речь заходит о микросервисной архитектуре на Java, фреймворк Micronaut выделяется среди конкурентов. Он создан с учётом особенностей облачных сред и контейнеров, что делает его идеальным. . .
Управление зависимостями в Java: Сравнение Spring, Guice и Dagger 2
Javaican 16.03.2025
Инъекция зависимостей (Dependency Injection, DI) — один из фундаментальных паттернов проектирования, который радикально меняет подход к созданию гибких и тестируемых Java-приложений. Суть этого. . .
Apache Airflow для оркестрации и автоматизации рабочих процессов
Mr. Docker 16.03.2025
Управление сложными рабочими процессами — одна из главных головных болей инженеров данных и DevOps-специалистов. Представьте себе: каждый день нужно запускать десятки скриптов в определенной. . .
Оптимизация приложений Java для ARM
Javaican 16.03.2025
ARM-архитектура переживает настоящий бум популярности в технологическом мире. Когда-то воспринимаемая исключительно как решение для мобильных устройств и встраиваемых систем, сегодня она штурмует. . .
Управление состоянием в Vue 3 с Pinia и Composition API
Reangularity 16.03.2025
Когда я начал работать с Vue несколько лет назад, мне казалось достаточным использовать простую передачу данных через props и события между компонентами. Однако уже на среднем по сложности проекте. . .
Введение в DevSecOps: основные принципы и инструменты
Mr. Docker 16.03.2025
DevSecOps - это подход к разработке программного обеспечения, который объединяет в себе принципы разработки (Dev), безопасности (Sec) и эксплуатации (Ops). Суть подхода заключается в том, чтобы. . .
GitHub Actions vs Jenkins: Сравнение инструментов CI/CD
Mr. Docker 16.03.2025
В этой битве за эффективность и скорость выпуска программных продуктов ключевую роль играют специализированные инструменты. Два гиганта в этой области — GitHub Actions и Jenkins — предлагают разные. . .
Реактивное программировани­е с Kafka Stream и Spring WebFlux
Javaican 16.03.2025
Реактивное программирование – это программная парадигма, ориентированная на потоки данных и распространение изменений. Она позволяет выражать статические или динамические потоки данных и. . .
Простая нейросеть на КуМир: Учебное пособие по созданию и обучению нейронных сетей
EggHead 16.03.2025
Искусственные нейронные сети — удивительная технология, позволяющая компьютерам имитировать работу человеческого мозга. Если вы хотя бы немного интересуетесь современными технологиями, то наверняка. . .
Исполнитель Кузнечик в КуМир: Решение задач
EggHead 16.03.2025
Среди множества исполнителей в системе КуМир особое место занимает Кузнечик — простой, но невероятно полезный виртуальный персонаж, который перемещается по числовой прямой, выполняя ваши команды. На. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru