Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  296

•  TDictionary Custom Sort  3 445

•  Fast Watermark Sources  3 191

•  3D Designer  4 950

•  Sik Screen Capture  3 444

•  Patch Maker  3 647

•  Айболит (remote control)  3 848

•  ListBox Drag & Drop  3 111

•  Доска для игры Реверси  82 589

•  Графические эффекты  4 050

•  Рисование по маске  3 346

•  Перетаскивание изображений  2 719

•  Canvas Drawing  2 869

•  Рисование Луны  2 672

•  Поворот изображения  2 284

•  Рисование стержней  2 217

•  Paint on Shape  1 617

•  Генератор кроссвордов  2 298

•  Головоломка Paletto  1 815

•  Теорема Монжа об окружностях  2 315

•  Пазл Numbrix  1 713

•  Заборы и коммивояжеры  2 089

•  Игра HIP  1 308

•  Игра Go (Го)  1 259

•  Симулятор лифта  1 506

•  Программа укладки плитки  1 252

•  Генератор лабиринта  1 578

•  Проверка числового ввода  1 397

•  HEX View  1 528

•  Физический маятник  1 383

 
скрыть


Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Первый COM-сервер



unit DllClass;

interface

uses
  ActiveX, ComObj;

const
  CLSID_TDllNumber: TGUID =
  '{84960F62-1D49-11D1-854E-444553540000}';

type
  INumber = interface
    ['{ECD5DAE3-1D37-11D1-854E-444553540000}']
    function GetValue: Integer; stdcall;
    procedure SetValue(New: Integer); stdcall;
    procedure Increase; stdcall;
    function RefCount: Integer; stdcall;
  end;

type
  TDllNumber = class(TComObject, INumber)
  private
    Value: Integer;
  public
    function GetValue: Integer; virtual; stdcall;
    procedure SetValue(New: Integer); virtual; stdcall;
    procedure Increase; virtual; stdcall;
    function RefCount: Integer; stdcall;
    procedure Initialize; override;
    destructor Destroy; override;
  end;

implementation

uses
  Windows, ComServ, SysUtils;

procedure TDllNumber.Initialize;
begin
  inherited;
  Value := 10;
end;

destructor TDllNumber.Destroy;
begin
  inherited;
  MessageBox(0,
    PChar('Object ' + IntToStr(Value) + ' Destroyed'),
    'TDLLNumber', mb_OK); // API call
end;

function TDllNumber.GetValue: Integer;
begin
  Result := Value;
end;

procedure TDllNumber.SetValue(New: Integer);
begin
  Value := New;
end;

procedure TDllNumber.Increase;
begin
  Inc(Value);
end;

function TDllNumber.RefCount: Integer;
begin
  Result := inherited RefCount;
end;

initialization
  TComObjectFactory.Create(
    ComServer, TDllNumber, CLSID_TDllNumber,
    'Md3.FirstCom', 'Md3 First COM Server',
    ciMultiInstance);
end.
Скачать весь проект




Похожие по теме исходники

DBLookupComboBox in StringGrid

e-Bay Commerce

Fractal Compression

Easy Compress Jpg

 

Component TClock

Component ZSImage

Compare Algo Circles

SMTP Component

 

fwIoCompletionPipe

Stud WebServer (web-сервер)

Proxy 1.0 (прокси-сервер)




Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте