Показать сообщение отдельно
  #3  
Старый 06.11.2009, 17:49
Аватар для Yurk@
Yurk@ Yurk@ вне форума
Специалист
 
Регистрация: 07.09.2007
Адрес: Украина, г. Днепропетровск
Сообщения: 892
Версия Delphi: 7 + ОгнеПтица
Репутация: выкл
По умолчанию

можно это проще сделать:
DLL:
Код:
function ShowAboutForm(xPos,yPos:Integer; vrs:PChar):Boolean; stdcall;
begin
with TAboutDlgForm.CreateParented(0) do
  begin
  //Выполняются всякие операции с формой и компонентами на ней
  Left:=xPos;
  Top:=yPos;
  Label4.Caption:=vrs;

  //показ модальной формы
  ShowModal;
  Free;
end;
end;

Exports
  ShowAboutForm;

Программа:
Код:
procedure TForm1.N27Click(Sender: TObject);
var
  H:Cardinal;
  ShowAboutForm:TShowAboutForm;
  xPos,yPos:Integer;
begin
   //Определение положение AboutForm
  xPos:= Form1.Left+((Form1.Width - 449) Div 2);
  yPos:= Form1.Top+((Form1.height - 484) Div 2);
  try
  {Загрузка библиотеки}
  H:=LoadLibrary('nms_rss.dll');

  {Получение адреса функции вывода формы}
  @ShowAboutForm:=GetProcAddress(H,'ShowAboutForm');

  {Вызов функции и получение ее результата}
  ShowAboutForm(xPos,yPos,PChar('Какой-то текст'));
  Finally
  {Выгрузим библиотеку}
  FreeLibrary(H);
  end;
end;

Поправил код
__________________
Поживу - увижу, Доживу - узнаю, Выживу - учту.
[P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
Ответить с цитированием