![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Форма и DLL. Архиваторный плагин [Delphi, Windows]
Моторокер © (2007-01-27 11:58:00)Пишу архиваторный плагин для Total Commander на Delphi
С VCL разобрался, теперь пытаюсь уменьшить размер плагина с помощью KOL&MCK
Форма вызывается как модальная, но программа работает дальше сразу после ShowModal.
Код самой формы в модуле Setup.pas
// настройка плагина
function ConfigurePacker(Parent: HWND; DLLinstance: integer): integer; stdcall;
var
fm: PfmSetup;
begin
NewfmSetup(fm, nil);
MsgOK('Run...');
{Run(fm.Form);
MsgOK('Показать форму...');}
fm.Form.ShowModalEx;
MsgOK('Удалить форму...');
fm.Form.Free;
fm:= nil;
Result:= E_SUCCESS; // Выполнено успешно
end;
Исходник:
http://motorocker.nm.ru/download/pluginsimple5.rar(23 Kb)
Анализ примеров ничего не дал.
Моторокер (2007-02-28 22:09:00) [1]Нашёл – надо писать fm.Form.ShowModalEx вместо fm.Form.ShowModal;
Моторокер (2007-02-20 22:17:00) [2]Всё работает как надо, но форма не модальная – Total Commander может получить фокус.
Моторокер (2007-02-06 15:01:00) [3]м-да вместо Build ptoject сделал Build all ptojects
заработало! спасибо! буду разбираться дальше
AlexM (2007-02-01 09:10:00) [4]TKolApplet можно и не ложить. Без него ,у меня работает тоже.
AlexM (2007-02-01 08:03:00) [5]Я открыл твой плагин, сделал как в [4],сохранил,нажал Close All,опять открыл,нажал build all projects и заработало( "удалить форму" появляется когда нажимаю кнопку на форме)
Моторокер (2007-01-31 08:40:00) [6]...и так пробовал и так тоже. Попробую ещё.
AlexM (2007-01-28 09:09:00) [7]На форму положи TKOLApplet,
а в Main.pas:
function ConfigurePacker(Parent: HWND; DLLinstance: integer): integer; stdcall;
var
fm: PfmSetup;
begin
NewfmSetup(fm, Applet);
Моторокер (2007-01-27 13:15:00) [8]Сообщения MsgOK только для тестирования
после
fm.Form.ShowModal;
сразу вызывается
MsgOK('Удалить форму...');
в VCL всё аналогично, на работает нормально
Psychedelic (2007-01-27 12:31:00) [9]А блин, это ж DLL.
Psychedelic (2007-01-27 12:30:00) [10]MessageBox API юзай, и указывай хэндл. Должно сработать.