Логин: Пароль:    Регистрация Всеми возможностями сайта можно пользоваться
только после авторизации.
   Забыли пароль?

Поиск
L



Статистика
u
Пользователи онлайн: нет
Гостей онлайн: 5
Всего онлайн: 5
Зарегистрировано юзеров: 7937
Комментариев на сайте: 698
Новый юзер: Micahmum



Последние комментарии
c
Dennisvoifs прокомментировал "Урок 3 - Конструкция IF...THEN...ELSE":
Пункт коммерческого учета цена, Ктп комплектные трансформаторные подстанции москва, Производство ктп москва и не только Вы найдете на нашем специализированном сайте: - Вам к нам!https://sviloguzov.ru/
Arthurneime прокомментировал "Урок 53 - Потоки в Delphi, (часть 1/3)":
[img]https://masterfutures.ru/wp-content/uploads/2020/03/14-2.png[/img] Online trading is becoming increasingly popular, as more people learn of the earning potential of platforms such as Broker, a broker which caters to a significant audience of digital traders (12 million and counting). Known for their excellent user interface, as well as fast deposit and withdrawal times, Broker provides multiple features to help traders earn on the markets. This overview will outline just some of the key aspects traders can expect to enjoy whilst working with Broker broker. Online trading is becoming increasingly popular, as more people learn of the earning potential of platforms such as Broker, a broker which caters to a significant audience of digital traders (12 million and counting). Known for their excellent user interface, as well as fast deposit and withdrawal times, Broker provides multiple features to help traders earn on the markets. This overview will outline just some of the key aspects traders can expect to enjoy whilst working with Broker broker. Broker Broker is operated by a dedicated team, whose main priority has always been to provide the best possible user experience, and ultimately satisfaction. Whether experienced in trading or a newcomer, the platform is easy to use and very responsive. The education section deserves special mention, particularly for assisting traders to learn and implement new strategies – which can be tested on the platforms free demo Source: [url=https://bit.ly/35fv3B6/]Broker[/url] https://bit.ly/35fv3B6/ Tags: Broker

Урок 29 - Работа с DLL

   В этом уроке мы ознакомимся с динамическими библиотеками Windows. Научимся её использовать и создавать.

   Файл динамической библиотеки Windows имеет расширение .dll, вы наверняка сталкивались с такими файлами. Библиотеки имеют ряд плюсов в сравнении с обычным .exe файлом:

  1. Экономия системной памяти
  2. Можно хранить картинки, файлы и тд.
  3. Быстрое обновление программы


   Например наша программа работает и использует определённый алгоритм действий, этот алгоритм записан в dll и при обновлении этого алгоритма достаточно заменить библиотеку с этим алгоритмом на новую, а так бы пришлось заново скачивать все программу целиком.

   Создается библиотека очень просто, открываем Delphi и выбираем File->New->Other->DLL Wizard и вот у нас появилась область кода, сразу стоит заметить, что нельзя использовать формы и компоненты, только ресурсы, функции и процедуры. Мы будем делать калькулятор, но все действия будут записаны в dll. Итак определимся с видом нашей функции: function calc(a, b, index: integer): integer; a и b это наши числа с которыми необходимо произвести действие, про index я расскажу немножечко позже. Над begin и под {R *.res} напишем нашу функцию:
function calc(a, b, index: integer): integer;
begin
if index = 0 then //если index = 0 то сложим числа
	Result:= a + b;
if index = 1 then //если index = 1 то вычтем из 1 числа 2 число 
	Result:= a - b;	
end;
exports calc;  //Позволим другим программам использовать эту функцию
   Теперь скомпилируем библиотеку, но для начала нужно где-нибудь сохранить проект и назовём его "dll", сохраняем и компилируем... вылезла ошибка. Это говорит о том, что все готово, мы просто компилируем без параметра, в папке куда мы сохранили появилась библиотека "dll.dll". Все с библиотекой закончили, теперь надо создать сам калькулятор который будет использовать нашу библиотеку. Создаем новый проект и сохраняем в ту же папку где и dll. Создаем вот такую форму:

Форма


   Добавим элементы для ComboBox1, кликаем на свойство Items и делаем тоже самое:

Действия


   И сразу после implementation объявляем нашу функцию:
 
function calc(a, b, index: integer): integer; external 'dll.dll';  //Говорим компилятору что эта функция находится в dll.dll
   В событии Button1 OnClick пишем код:
 
label1.Caption:= IntToStr(calc(StrToInt(Edit1.Text), StrToInt(Edit2.Text), ComboBox1.ItemIndex));
   Все теперь запускаем программу, вводим числа, выбираем действие и нажимаем на кнопочку, в Label1 выводится результат:

Результат


Удачи!
Встретимся в следующем уроке!


Источник: www.thedelphi.ru
Автор: Савельев Александр
Опубликовано: 25 Апреля 2013
Просмотров:

Урок 28 - Создаем игру Ping-Pong - часть(3/3) Урок 30 - Знакомство с базами данных

Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии.



аватар Добавила: Needle [Новичок] Дата: 2014-02-14
ой хороооош! спасииибочки!




аватар Добавил(а): Kopeheb [Новичок] Дата: 2015-01-31
но хотелось бы(я еще не все уроки просмотрел) найти как мне записать в dll формулу(ы), которые: одна: суммирует SUM(от Edit1 до Edit31) вторая: (результат_SUM+Edit32-Edit33-Edit34) / (либо ComboBox2(с двумя значениями) Edit35 * 100 кароч, замыслило программку написать которая считает: и желательно куда то записывает результаты в(.xls) с сохранением предыдущих записей. Конечно же, наверняка, такое лучше реализовать с таблицами, но пока понятного примера не нашел. и еще вопросы: созданная по уроку dll, после редакции нужно компилировать в новую dll или можно в эту же?




аватар Добавил(а): Kopeheb [Новичок] Дата: 2015-01-31
редакция строчки (либо ComboBox2(с двумя значениями) ЛИБО Edit35 * 100




аватар Добавил(а): nur7 [Новичок] Дата: 2015-09-08
Undeclared stream!




аватар Добавил: sashf1999 [Новичок] Дата: 2016-04-23
хммм, интересненький способ