Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.07;
Скачать: CL | DM;

Вниз

Форма и DLL. Архиваторный плагин   Найти похожие ветки 

 
Моторокер   (2007-01-27 11:58) [0]

Пишу архиваторный плагин для 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)

Анализ примеров ничего не дал.


 
Psychedelic ©   (2007-01-27 12:30) [1]

MessageBox API юзай, и указывай хэндл. Должно сработать.


 
Psychedelic ©   (2007-01-27 12:31) [2]

А блин, это ж DLL.


 
Моторокер   (2007-01-27 13:15) [3]

Сообщения MsgOK только для тестирования

после
fm.Form.ShowModal;
сразу вызывается
MsgOK("Удалить форму...");

в VCL всё аналогично, на работает нормально


 
AlexM ©   (2007-01-28 09:09) [4]

На форму положи TKOLApplet,
а в Main.pas:

function ConfigurePacker(Parent: HWND; DLLinstance: integer): integer; stdcall;
var
 fm: PfmSetup;
begin
 NewfmSetup(fm,Applet);


 
Моторокер   (2007-01-31 08:40) [5]

...и так пробовал и так тоже. Попробую ещё.


 
AlexM ©   (2007-02-01 08:03) [6]

Я открыл твой плагин, сделал как в [4],сохранил,нажал Close All,опять открыл,нажал build all projects и заработало( "удалить форму"  появляется когда нажимаю кнопку на форме)


 
AlexM ©   (2007-02-01 09:10) [7]

TKolApplet можно и не ложить. Без него ,у меня работает тоже.


 
Моторокер   (2007-02-06 15:01) [8]

м-да вместо Build ptoject сделал Build all ptojects

заработало! спасибо! буду разбираться дальше


 
Моторокер   (2007-02-20 22:17) [9]

Всё работает как надо, но форма не модальная – Total Commander может получить фокус.


 
Моторокер   (2007-02-28 22:09) [10]

Нашёл – надо писать fm.Form.ShowModalEx вместо fm.Form.ShowModal;



Страницы: 1 вся ветка

Текущий архив: 2007.10.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
15-1189357149
anton773
2007-09-09 20:59
2007.10.07
почему дата отображается полностью


15-1189062735
iam
2007-09-06 11:12
2007.10.07
Ссылку на неплохую книгу по MS SQL SERVER


2-1189486797
no_name
2007-09-11 08:59
2007.10.07
Как поместить созданный мной компонент в список ActiveX


15-1187816153
Real
2007-08-23 00:55
2007.10.07
Видеозахват: глюки на экспорте


15-1189290280
Kostafey
2007-09-09 02:24
2007.10.07
С днем рождения ! 9 сентября