Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > ActiveX


Автор: Слава 29.12.2005, 16:22
как создать ActiveX на основе exe файла

Спасибо

Автор: _hunter 29.12.2005, 17:07
а зачем? и чем .dll не устраивает?

Автор: Слава 29.12.2005, 17:18
просто уже сделан еxe модуль

Автор: Слава 29.12.2005, 17:47
раскажите хоть в двух словах как это сделать

пожалуйста......((((((((

Автор: Слава 30.12.2005, 12:58
Цитата
а зачем? и чем .dll не устраивает?


Вы хотели сказать что вместо ActiveX лучше использовать dll?

Автор: _hunter 30.12.2005, 13:13
нет. я хотел сказать что вместо ActiveX на основе exe лучше использовать ActiveX на основе dll
по крайней мере такие ActiveX' ы билдер создает без проблем...

Автор: Слава 30.12.2005, 13:39
Цитата
лучше использовать ActiveX на основе dll


а есть возможность пересобрать exe файл и сделать из него dll в системе Builder c++?

Автор: _hunter 30.12.2005, 13:50
если исходники есть...

Автор: Слава 30.12.2005, 13:54
да исходники есть......

подскажите пожалуйста как это сделать

спасибо........

Автор: _hunter 30.12.2005, 14:18
ну так тю: File->New->Other...->ActivX->ActivX Library
( там же можно и сервер к exe-шнику прилепить... )

Автор: Слава 30.12.2005, 14:40
а получится ли на выходе ocx файл?

Автор: _hunter 30.12.2005, 15:02
попробуй smile

Автор: Слава 30.12.2005, 15:15
я попробовал и собирается dll..............

а мне в решении моей задачи сказали создать ocx файл

Вот задание :

Создать на основе ActiveX модуль в виде осх файла.......
......................
......................
и тестируемое приложение которое бы проверяло работу этого ActiveX.

Я пошел (как мне уже кажется неверным путем(создал exe файл который я думал можно будет как то обернуть ActiveXом))

Автор: _hunter 30.12.2005, 15:44
ну переименуй ее ( .dll ) в .ocx...

Автор: Слава 16.1.2006, 14:07
Создаю приложение,компилирую...получаю exe файл с именем Test.exe

Создаю ActiveForm: File/New/ActiveX/..ActiveForm
в каче тестового приложения подсовываю ему выше созданное приложение Test.exe
компилирую все это дело получаю ocx файл c именем afTest.ocx

Вопрос как осуществляется передача данных из exe в ocx?

Автор: _hunter 16.1.2006, 14:13
какая передача? каких данных?

Автор: Слава 16.1.2006, 14:54
в созданном ocx есть type library в нем есть методы и свойства.

допустим я создал там новое свойство Myproperty.

как мне добраться до этого свойства из exe файла?

Спасибо.

Автор: _hunter 16.1.2006, 15:50
регестрируй COM-сервер на основе этой type library и работай с ним

Автор: Слава 16.1.2006, 17:10
в регистрации нет проблеммы...
мне бы узнать с помощью какких функций можно залезть в этот ActiveX

я пробовал вот так:

Код

#include <vcl.h>
#pragma hdrstop

#include "ComObj.hpp"
#include "unU.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"

Variant Serv;
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
   Serv=CreateOleObject("afTest_1.afTest");
   Serv.OlePropertyGet("Condition");
}

ПОсле компиляции выдает ошибку?
в которой говорится что член группы не найен............

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)