Как сделать калькулятор в Delphi?

Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.

Как Delphi реализует многоплатформенную разработку?

Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...

Пример обратного вызова DLL

Советы » DLL » Пример обратного вызова DLL

Обратный вызов (callback) для NotifyRegister должен находиться в DLL. Вам не нужен MakeProcInstance, просто добавьте "export" к объявлению функции. Нижеследующий код является простым примером DLL для Delphi. Вы должны запустить все тесты вне Delphi или же ваша программа не получит никаких уведомлений (notifications). Все это выглядит похожим на Delphi, зарегистрировавшей перехват с Toolhelp...

library

Lib1; uses

WinTypes, Messages, WinProcs, Toolhelp; const

WM_NOTIFY = WM_USER + $100; var

targetHWnd: HWnd; function

HookProc(wID: Word; dwData: LongInt): Bool; export; begin

PostMessage(targetHWnd, WM_NOTIFY, wID, dwData); Result := False

end

; procedure

InstallHook(notifyWindow: HWnd); export; begin

if

targetHWnd = 0 then

begin

if

not

NotifyRegister(0, HookProc, NF_NORMAL) then

begin

MessageBox(notifyWindow, 'Неудача NotifyRegister!', 'Ошибка!', MB_OK + MB_ICONSTOP); end

else

begin

targetHWnd := notifyWindow; end

; end

; end

; procedure

UnInstallHook; export; begin

if

targetHWnd <> 0 then

begin

NotifyUnregister(0); targetHWnd := 0; end

; end

; exports

InstallHook, UnInstallHook; begin

targetHWnd := 0; end

.

Другое по теме:

Категории

Статьи

Советы

Copyright © 2024 - All Rights Reserved - www.delphirus.com