Чтение онлайн

на главную - закладки

Жанры

Советы по Delphi. Версия 1.4.3 от 1.1.2001

Озеров Валентин

Шрифт:

raise EProgManError.Create('Не могу добавить элемент ' + ItemName);

 finally

FreeMem(P, PSize);

 end;

End;

end.

GROUPFILE и ADDITEM для групп

Delphi 1

Вот код для создания файла группы и добавления в группу файла-элемента.

Чтобы использовать эту процедуру, определите DDE clientconv App как ProgMan.

procedure TMainForm.CreateWinGroup(Sender: TObject);

var

 Name: string;

 Name1: string;

 Macro: string;

 Macro1: string;

 Cmd, Cmd1: array[0..255] of Char;

begin

 {destDir - dos-каталог, хранящий YourFile.Ext'}

 Name := 'GroupName';

 Name1 := destDir + 'YourFile.Ext, FileName_in_Group ';

 Macro := Format('[CreateGroup(%s)]', [Name]) + #13#10;

 Macro1 :=Format('[Additem(%s)]',[Name1]) +#13#10;

 StrPCopy(Cmd, Macro);

 StrPCopy(cmd1, Macro1);

 DDEClient.OpenLink;

 if not DDEClient.ExecuteMacro(Cmd, False) then

MessageDlg('Невозможно создать группу '+Name, mtInformation, [mbOK], 0)

 else begin

DDEClient.ExecuteMacro(Cmd1, False);

 end;

 DDEClient.CloseLink;

end;

Как можно работать с DDE под Delphi, используя вызовы API?

Delphi 3

Кстати, достаточно легко: следующий пример демонстрирует как можно научить общаться клиентскую программу с программой-сервером. Обе программы полностью созданы на Delphi. В итоге мы имеем 2 проекта, 3 формы и 3 модуля. Для работы с DDE-запросами данный пример использует методы DDE ML API.

Сервер должен начать свою работу перед тем, как клиент будет загружен. Данный пример демонстрирует 3 способа взаимодействия между клиентом и сервером:

1. Клиент может "пропихивать" (POKE) данные на сервер.

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

3. Данные сервера изменяются, после чего клиент делает запрос серверу для получения новых данных и обновляет свой вид.

Как работает программа.

Ниже приведены 8 файлов, сконкатенированных в единое целое. Каждый файл имеет следующую структуру:

{ *** НАЧАЛО КОДА FILENAME.EXT *** } КОД { *** КОНЕЦ КОДА FILENAME.EXT *** },

поэтому

вам остается всего-лишь взять код, расположенный между маркерами { *** }, скопировать в файл с соответствующим именем, и собрать оба проекта в среде Delphi.

{ *** НАЧАЛО КОДА DDEMLCLI.DPR *** }

program Ddemlcli;

uses Forms,Ddemlclu in 'DDEMLCLU.PAS' {Form1};

{$R *.RES}

begin

 Application.CreateForm(TForm1, Form1);

 Application.Run;

end.

{ *** КОНЕЦ КОДА DDEMLCLI.DPR *** }

{ *** НАЧАЛО КОДА DDEMLCLU.DFM *** }

object Form1: TForm1

 Left = 197

 Top = 95

 Width = 413

 Height = 287

 HorzScrollBar.Visible = False

 VertScrollBar.Visible = False

 Caption = 'Демонстрация DDEML, Клиентское приложение'

 Font.Color = clWindowText

 Font.Height = -13

 Font.Name = 'System'

 Font.Style = []

 Menu = MainMenu1

 PixelsPerInch = 96

 OnCreate = FormCreate

 OnDestroy = FormDestroy

 OnShow = FormShow

 TextHeight = 16

 object PaintBox1: TPaintBox

Left = 0

Top = 0

Width = 405

Height = 241

Align = alClient

Color = clWhite

ParentColor = False

OnPaint = PaintBox1Paint

 end

 object MainMenu1: TMainMenu

Top = 208

object File1: TMenuItem

Caption = '&Файл'

object exit1: TMenuItem

Caption = 'В&ыход'

OnClick = exit1Click

end

end

object DDE1: TMenuItem

Caption = '&DDE'

object RequestUpdate1: TMenuItem

Поделиться:
Популярные книги

Газлайтер. Том 8

Володин Григорий
8. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 8

На Ларэде

Кронос Александр
3. Лэрн
Фантастика:
фэнтези
героическая фантастика
стимпанк
5.00
рейтинг книги
На Ларэде

Охота на попаданку. Бракованная жена

Герр Ольга
Любовные романы:
любовно-фантастические романы
5.60
рейтинг книги
Охота на попаданку. Бракованная жена

Кай из рода красных драконов

Бэд Кристиан
1. Красная кость
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Кай из рода красных драконов

Хозяйка Проклятой Пустоши. Книга 2

Белецкая Наталья
2. Хозяйка Проклятой Пустоши
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Хозяйка Проклятой Пустоши. Книга 2

Безумный Макс. Поручик Империи

Ланцов Михаил Алексеевич
1. Безумный Макс
Фантастика:
героическая фантастика
альтернативная история
7.64
рейтинг книги
Безумный Макс. Поручик Империи

Потусторонний. Книга 2

Погуляй Юрий Александрович
2. Господин Артемьев
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Потусторонний. Книга 2

Чапаев и пустота

Пелевин Виктор Олегович
Проза:
современная проза
8.39
рейтинг книги
Чапаев и пустота

Солнечный корт

Сакавич Нора
4. Все ради игры
Фантастика:
зарубежная фантастика
5.00
рейтинг книги
Солнечный корт

Лютая

Шёпот Светлана Богдановна
Любовные романы:
любовно-фантастические романы
6.40
рейтинг книги
Лютая

Ведьмак (большой сборник)

Сапковский Анджей
Ведьмак
Фантастика:
фэнтези
9.29
рейтинг книги
Ведьмак (большой сборник)

Наследие Маозари 4

Панежин Евгений
4. Наследие Маозари
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Наследие Маозари 4

Ученик

Губарев Алексей
1. Тай Фун
Фантастика:
фэнтези
5.00
рейтинг книги
Ученик

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5