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

Вниз

ActiveX   Найти похожие ветки 

 
SerB   (2003-01-10 09:03) [0]

Кто-нибудь пытался использовать сабж в своих KOL проектах, из английского описания утилиты TLB2KOL Кладова я понял все ,боюсь с точностьтю до "на оборот",...
Попробовал MSAgenta(адаптированного названной утилитой названного автора)использовать... Получил компилирующуюся, но не работающую прогруммаку...
Поделитесь опытом или советами


 
alex_s   (2003-01-13 18:49) [1]

А более детально ?
Я пока особых недоразумений не встречал, кроме,
разве что, замены типа параметра на TGuid, хотя
это дельфовый экспортер делает, а не tlb2kol.


 
SerB   (2003-01-14 04:50) [2]

После того как я полностью обновил КОЛ/МСК поставил последнюю версию КОЛагента все (почти все заработало). Даже пример из лдемок (кроме одной библиотечной функции ChangeAgent). Посмотрел ее, вроде все нормально, но при вызове (смене характера) генерируется runtime error 217 at 000ABF2. Попытался поставить свой обработчик исключения (вывести код ошибки)...получил тоже самое плюс - переполнение памяти...
А вообще-то я хотел просто Flash филм запустить (ту же Масяню, например)... Здесь и столкнулся с тем, о чем писал ранее... Но это еще до переустановки КОЛ... Покопаюсь на досуге


 
Serb   (2003-01-15 12:17) [3]

Вот что у меня получилось:).

program FlashMXDemo;
uses
Windows,Messages,Kol, err,ShockwaveFlashObjects_TLBKOL;
{!!! err,ShockwaveFlashObjects_TLBKOL - именно это и дает возможность
использования ActivX включая доступ к его свойствам}
var
Dialog:pOpenSaveDialog; {Диалог он и в Африке диалог}
// Menu:pMenu; {Менюшка}
SFO: PShockwaveFlash; {Тот самый флэш-объект, ради которого все сделано}
{Поддержка меню}
procedure MenuClick(dummy:pointer;sender:pmenu;Item:integer);
begin
begin
case item of
1:begin
Dialog.execute;
//SFO.Clear;
if Trim(Dialog.Filename)<> "" then
begin
{Собственно выбор и загрузка фильма}
SFO.Movie:=Dialog.Filename;
Applet.SimplestatusText:=Pchar("просматриваем фильм: "+ ExtractFileNameWOExt(Dialog.Filename));
Applet.ClientHeight:=SFO.Height + Applet.Border * 2;//Resizeparent doesnot work
Applet.ClientWidth:=SFO.Width + Applet.Border * 2;//Resizeparent doesnot work
Applet.CanResize;
end;
end;
3:begin
{Create simplest aboutbox}
MsgOk("Macromedia Flash MX Viewer Demo"+
#13#10+
"еще один пример"+
#13#10+
"использования ActiveKOL"+
#13#10+
"(c)2003, SerB");
end;
( Nil,"Macromedia Flash MX Viewer Demo")
Вот что у меня получилось:).

program FlashMXDemo;
uses
Windows,Messages,Kol, err,ShockwaveFlashObjects_TLBKOL;
{!!! err,ShockwaveFlashObjects_TLBKOL - именно это и дает возможность
использования ActivX включая доступ к его свойствам}
var
Dialog:pOpenSaveDialog; {Диалог он и в Африке диалог}
// Menu:pMenu; {Менюшка}
SFO: PShockwaveFlash; {Тот самый флэш-объект, ради которого все сделано}
{Поддержка меню}
procedure MenuClick(dummy:pointer;sender:pmenu;Item:integer);
begin
begin
case item of
1:begin
Dialog.execute;
//SFO.Clear;
if Trim(Dialog.Filename)<> "" then
begin
{Собственно выбор и загрузка фильма}
SFO.Movie:=Dialog.Filename;
Applet.SimplestatusText:=Pchar("просматриваем фильм: "+ ExtractFileNameWOExt(Dialog.Filename));
Applet.ClientHeight:=SFO.Height + Applet.Border * 2;//Resizeparent doesnot work
Applet.ClientWidth:=SFO.Width + Applet.Border * 2;//Resizeparent doesnot work
Applet.CanResize;
end;
end;
3:begin
{Create simplest aboutbox}
MsgOk("Macromedia Flash MX Viewer Demo"+
#13#10+
"еще один пример"+
#13#10+
"использования ActiveKOL"+
#13#10+
"(c)2003, SerB");
end;
end;
end;
end;

begin
{Создание формы}
Applet:=NewForm(Nil,"Macromedia Flash MX Viewer Demo").SetSize(800,600);
{Создание статусбара для отображения имени просматриваемого фильма}
Applet.SimplestatusText:="";
new(SFO,CreateParented(Applet));
SFO.Setalign(caClient);
SFO.CenterOnParent;
{Создание диалога открытия файла}
Dialog:=NewOpenSaveDialog("Фильмы","",[]);
Dialog.Filename:="";
Dialog.Filter:="фильмы|*.swf";
NewMenu(Applet,0,["&Файлы","(","&Открыть",")","&Помощь","(","&О программе",")",""],TonMenuItem(MakeMethod(nil,@MenuClick)));
Run(Applet);
Dialog.free;
Applet.Update;
end.

Работает, но есть одно небольшое но при компиляции программы
было много "ругани" на ShockwaveFlashObjects_TLBKOL (пезультат работы утилитки TLB2KOL)... Пришлось закомментирповать в ShockwaveFlashObjects_TLBKOL приличное количество функций и свойств... А вот под МСК пока еще не пробовал...
PS. Американофилам мои извинения, почему-то не считаю русский язык ущербным и позволил себе комментарии по-русски.


 
Serb   (2003-01-15 12:20) [4]

PS . к предыдущему: за основу взял пример по КОЛ-битмапам, автора не помню...


 
SerB   (2003-01-20 05:48) [5]

Аналогичный код воткнул в проект с формой (KOL_MCK)получил екзешник на 0,5 кБ корочем чем в описанном варианте... Подумал что глюк какой-то... Повторил с другим ActiveX (агентом)... тот же результат... Странно...
Кстати, вопрос по поводу ошибки runtime 217 - остается в силе - в чем может быть дело?



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

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

Наверх




Память: 0.48 MB
Время: 0.019 c
1-82285
ЮРИЙ_К
2003-09-11 10:27
2003.09.25
Как сделать недоступной закладку PageControl ?


3-82114
XQuest
2003-09-04 09:23
2003.09.25
Rave Reports против Crystal Reports


3-82076
RDA
2003-09-06 12:00
2003.09.25
Скорректированный набор данных


14-82443
uw
2003-09-05 15:57
2003.09.25
Ум без книг, аки птица спешена


7-82507
Opryshok
2003-07-16 16:32
2003.09.25
как сделать TryIcon и Menu для TryIcon?