Показать сообщение отдельно
  #1  
Старый 27.03.2010, 03:20
Bulbo Bulbo вне форума
Прохожий
 
Регистрация: 27.03.2010
Сообщения: 2
Репутация: 10
Сообщение Компоненты из DLL

Перерыл Google, форумы и т.д.

Проблема в создании компонентов из DLL.

Создаю форму из длл примерно так:

PHP код:
function CreateTheFormPointer;
begin
 Result 
:= TForm1.Create(nil);
end;

function 
ShowTheForm(PPointer): Boolean;
const
  
mrOK 1;
begin

  Result 
:= TForm1(P).ShowModal mrOK;
end;

 
ShowTheForm(CreateTheForm); 


Вроде все тип топ "Создалась, проявилась"...

создаю компонент где то так:

PHP код:
CoInitializeEx(nil,COINIT_APARTMENTTHREADED);
RdpDoc.Rdp:= TMsRdpClient3.Create(Form1);
RdpDoc.Rdp.Parent:=  Form1;
RdpDoc.Rdp.Left:=10;
RdpDoc.Rdp.Top:=10;
RdpDoc.Rdp.Visible:=True;
RdpDoc.Rdp.Tag:=0;
RdpDoc.Rdp.Server:='192.168.1.1';
RdpDoc.rdp.UserName:='111';
RdpDoc.rdp.AdvancedSettings4.Set_ClearTextPassword('111');
RdpDoc.rdp.Connect


в ЕХЕ все отлично а вот в длл как то не получилось.... (Форма виснет при создание RDP компонента).

Если в длл вызвать форму так:

PHP код:
Application.Initialize;
  
Application.CreateForm(TForm1Form1);
  
Application.Run

то компонент RDP создаеться но при попытки вызова функции Connect виснет аналогочно первому варианту.

Перечитал все, видел такую же проблему и с TWebBrowser...

По теме нашел: http://www.sql.ru/forum/actualthread.aspx?tid=106803

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


Задача: Адекватно работать с компонентами из DLL. Накидайте ссылок, может кто то тоже сталкивался с этим. Заранее спасибо.
Ответить с цитированием