Главная страница
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.018 c
2-1189163668
Washington
2007-09-07 15:14
2007.10.07
Опять ошиба :(


15-1189175731
Верующий
2007-09-07 18:35
2007.10.07
Что будет без ИНН?


2-1189240396
Дядя
2007-09-08 12:33
2007.10.07
График


2-1189265004
Надуев Алексей
2007-09-08 19:23
2007.10.07
Memo


2-1189505083
юра
2007-09-11 14:04
2007.10.07
сжатие данных