Рубрика «Delphi» - 9

Друзья, компания Embarcadero представила дорожную карту (roadmap) развития своего основного продукта RAD Studio (Delphi, C++Builder) до 2018 года.

image
Читать полностью »

Приветствую, уважаемое сообщество!
Забегая вперед прошу прощения у тех, кто ожидает новизны или революционных идей. Их тут нет. Но есть вполне хорошая прикладная система.
Системы поддержки принятия решений сейчас набирают обороты. Причем я не буду особо останавливаться на перечислении способов реализации. Оговорюсь только об основных свойствах.
Я бы очень упрощенно и обобщенно назвал эти системы вероятностными. То есть они выдают рекомендации с известной долей вероятности используя накопленную и проанализированную статистику. Не скажу что это плохо. Тема BigData и Machine learning нынче в тренде. Так же эти системы работают по принципу черного ящика. Поэтому проверить достоверность работы заложенной модели не всегда можно выявить.Читать полностью »

В следующей статье описан еще один подход по реализации системы поддержки принятия решений. На основе этой СППР был реализован алгоритм для службы поддержки.

Исходное состояние – я руководил службой внедрения и сопровождения в частной медицинской компании. Филиальная сеть отделений в регионах, которая работает под управлением единой системы. Так же используется схожее оборудование на всех объектах. Фактически все оборудование подключено в систему и отдает данные (диализные аппараты, лабораторные анализаторы, аппараты УЗИ и кардиографы, измерители веса и давления, водоподготовка, система вентиляции, датчики температуры и влажности).

Сеть отделений постоянно расширяется. В каждом отделении есть ИТ-специалист. Далеко не всегда этот специалист компетентен в различных областях. Задача стояла достаточно масштабная по обеспечению работоспособности довольно сложной с точки реализации системы.
Читать полностью »

Это моя первая статья, потому не буду многословным и постараюсь как можно короче описать разработку клавиатурного шпиона на Делфи. Использовать мы будем функцию WinApi (getasynckeystate), осуществляющую глобальный перехват нажатия клавиш клавиатуры.

Описание: function GetAsyncKeyState(Key: Integer): Integer;
Опpеделяет состояние виpтуальной клавиши.
Параметры: Key: Код виpтуальной клавиши.
Возвращаемое значение: Если установлен стаpший байт, клавиша Key находится в нажатом положении, а если младший, то клавиша Key была нажата после пpедыдущего вызова функции.

Также нам понадобиться функция GetForegroundWindow — возвращает дескриптор приоритетного окна (окна, с которым пользователь в настоящее время работает). Система присваивает немного более высокий приоритет потоку, который создает приоритетное окно, чем тот, который она дает другим потокам.

Я думаю, этого достаточно для базового понимания того, как мы собираемся всё это дело реализовать. Преступим к созданию формы и написанию кода.

Начнём по порядку: открываем Делфи, заранее сохраняем наш проект, заходим в обработчик событий нашей формы вкладка Events и находим событие OnShow, два раза щёлкаем левой клавишей мыши на событие и пишем код.
Читать полностью »

Delphi. Что таит в себе TDictionary - 1
Доброго времени суток.
А знаете ли вы, что не все хеш таблицы одинаково полезны? Сейчас я расскажу вам историю, как одна плохая хеш таблица скушала всю производительность, и не поморщилась. И как исправление этой хеш таблицы ускорило код почти в 10 раз.
Конечно, согласно теме — в статье речь пойдет о Delphi, но даже если вы не Delphi разработчик, то все равно советую заглянуть под кат, а после прочтения статьи в исходный код хеш таблиц, которые вы используете. А Delphi разработчикам я советую вообще отказаться от стандартного TDictionary.
Читать полностью »

Друзья, поздравляю всех с выходом нового релиза FastReport 5.5 для Lazarus и RAD Studio (Delphi, C++Builder)!

Вчера компания FastReport выпустила свой флагманский продукт FastReport.
FastReport — генератор отчётов любой сложности с огромными возможностями для Delphi, C++Builder и Lazarus.

На мой взгляд, продукт FastReport не нуждается в каком-то особом представлении, этот продукт является де-факто стандартом построения отчётов не только в России, СНГ, но и во всём мире. Практически любое бизнес-приложение нуждается в использовании генератора отчётов.
image

Новый релиз FastReport 5.5 полностью совместим с последними новейшими инструментами разработки приложений в RAD Studio 10.1 Berlin и Lazarus 1.6.
Приятно, что разработчики уделили особое внимание улучшениям и появлению новых возможностей для разработчиков в Lazarus таких, как поддержка внутренних диаграмм(Charts), экспорт в PDF и исправления совместимости.
Читать полностью »

Сначала хотелось бы ввести несколько тезисов о том, о чём будет написано в этой статье:

1. Пост посвящён процессу создания и конечному продукту для станции технического обслуживания автомобилей (далее СТО).
2. Программа написана на языке программирования Delphi в среде программирования Embarcadero Delphi 10 Seattle.
3. В программе используется подключение к FTP-серверу, базы данных SQLite, взаимодействие с реестром компьютера (OS Windows).
4. «Garage» разработана для OS Windows и OS Android.
5. Различные темы оформления созданы с помощью библиотеки нестандартных компонентов AlphaControls.

Итак, пожалуй, начнём.
Читать полностью »

Друзья, поздравляю всех с выходом нового релиза Lazarus 1.6!
Оказывается, мы забыли посвятить этому событию отдельный пост, навёрстываем.

image

Прошло уже больше года после крупного релиза. И вот, наконец-то, после недавних двух релиз-кандидатов мы встречаем долгожданный Lazarus 1.6 с впечатляющим перечнем улучшений и исправлений.
Читать полностью »

RSA шифрование через библиотеку OpenSSL в Delphi - 1

По долгу службы в разработчиках повстречалась задача шифровать текстовые строки алгоритмом RSA, используя публичный и секретный ключи в PEM формате. При изучении данного вопроса выбор пал на использование библиотеки OpenSSL. Хочу поделиться примерами реализации функционала шифрования на Delphi. Действия выполнялись в ОС Windows, среда разработки Borland Delphi 7.
Читать полностью »

Начиная программировать на языке ассемблера для микроконтроллеров ARMпервое, с чем вы столкнетесь — это отсутствие какой либо среды для программирования (c первым проектом, программами для компиляции и сборки я уже разбирался). Причем бытует мнение, что для ассемблера ничего кроме блокнота и не нужно (максимум, «для гурманов» сообщество предложит использовать редактор с подсветкой кода). И этот подход в принципе имеет место быть — ровно на столько, на сколько удобно писать программы на С++ в блокноте — то есть до того момента, как вы перейдете от программ «Hello, Word» к чему то более сложному.

Некоторое время назад я высказал предложение о необходимости написания среды разработки (или хотя бы редактора) для программ на ассемблере, но в ответ не услышал ничего. Значит, нужно написать среду самому. Понятно, что это не будет уровень современных сред программирования, над которыми трудятся целые коллективы разработчиков (да и опыта у них намного больше чем у меня), но я и не ставлю цель конкурировать с ними по «навороченности» — мне всего лишь нужна среда для комфортного программирования на ассемблере.

Если вам нужно тоже самое и нужно именно «ехать, а не шашечки» — тогда добро пожаловать под кат.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js