Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
Подобная проблема возникает
при создании инсталляторов и деинсталляторов. Наиболее простой и гибкий путь - использование
DDE. При этом посылаются запросы к PROGMAN. Для этого необходимо поместить на форму
компонент для посылки DDE запросов - объект типа TDdeClientConv. Для определенности
назовем его DDEClient. Затем добавим метод для запросов к PROGMAN: Function TForm2.ProgmanCommand(Command:string):boolean;
var Создать группу с именем "Имя группы", причем в нем могут быть пробелы и знаки
препинания. Путь к GRP файлу можно не указывать, тогда он создастся в каталоге Windows.
Delete(Имя группы) Удалить группу с именем "Имя группы"
ShowGroup(Имя группы, состояние)
Показать группу в окне, причем состояние - число, определяющее параметры окна:
1-нормальное состояние + активация
2-миним.+ активация Добавить раздел к активной группе. В командной строке, имени размера и путях
допустимы пробелы, Xpos и Ypos - координаты иконки в окне, лучше их не задавать,
тогда PROGMAN использует значения по умолчанию для свободного места. HotKey - виртуальный
код горячей клавиши. Mimimize - тип запуска, 0-в обычном окне, <>0 - в минимизированном.
DeleteItem(имя раздела)
Удалить раздел с указанным именем в активной группе
Пример использования:
macrocmd:array[0..88] of char;
begin
DDEClient.SetLink('PROGMAN','PROGMAN');
DDEClient.OpenLink; { Устанавливаем
связь по DDE }
strPCopy(macrocmd,'['+Command+']'); { Подготавливаем ASCIIZ
строку }
ProgmanCommand :=DDEClient.ExecuteMacro(MacroCmd,false);
DDEClient.CloseLink; { Закрываем связь по DDE }
end;
При вызове ProgmanCommand возвращает true, если посылка макроса была успешна. Система
команд (основных) приведена ниже:
Create(Имя группы, путь к GRP файлу)
3-макс. + активация
4-нормальное состояние
5-Активация
AddItem(командная строка, имя раздела, путь к иконке, индекс иконки (с 0), Xpos,Ypos,
рабочий каталог, HotKey, Mimimize)
ProgmanCommand('CreateGroup(Комплекс программ для каталогизации литературы,)');
ProgmanCommand('AddItem('+path+'vbase.hlp,Справка по VBase,'+ path +' vbase.hlp,
0, , , '+ path + ',,)');
где path - строка типа String, содержащая полный путь к каталогу ('C:Catalog');