fpWeb и оконное приложение

Обсуждаются как существующие проекты (перевод документации, информационная система и т.п.), так и создание новых.

Модератор: Модераторы

Ответить
S_Gur
постоялец
Сообщения: 136
Зарегистрирован: 30.12.2018 21:17:42

fpWeb и оконное приложение

Сообщение S_Gur »

Доброго времени суток. Никто не пробовал внедрить fpWeb-овский HTTP-сервер в обычное оконное приложение? Это в принципе возможно?
Alex2013
долгожитель
Сообщения: 3215
Зарегистрирован: 03.04.2013 11:59:44

Сообщение Alex2013 »

Вообще написанный на Лазарусе веб-сервер вполне может быть оконным приложением.
Изображение
Конкретно "fpWeb веб-сервер"? Точно не скажу, но не думаю что там есть что-то что может очень сильно мешать . ( В крайнем случае всегда можно сделать "внешний фронтенд" )
S_Gur
постоялец
Сообщения: 136
Зарегистрирован: 30.12.2018 21:17:42

Сообщение S_Gur »

Alex2013, мне не нужен фронтэнд. Мне нужен небольшой простенький бэк, но хотелось бы - во-первых - иметь возможность в нем же редактировать настройки и - во-вторых, просто приятный бонус - кидать запущенное приложение в трей. Конкретно в случае fpWeb используется свой THTTPApplication, я пока не знаю, можно ли это обойти. Можно пощупать другие фреймворки, но уж очень жалко от него отказываться - простенький и вполне прилично работает... А что это за пакет поддержки? Это ваша разработка, я так понимаю?
Alex2013
долгожитель
Сообщения: 3215
Зарегистрирован: 03.04.2013 11:59:44

Сообщение Alex2013 »

S_Gur писал(а): А что это за пакет поддержки? Это ваша разработка, я так понимаю?
Да довольно старая и заброшенная ( в том числе из за появления fpWeb и "иже с ним" типа Инди ).
Зы
По THTTPApplication: В программе могут быть целые кучи TХХХApplication

Код: Выделить всё

program AR_BrowserMode;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Interfaces, // this includes the LCL widgetset
  Forms, u1_AR_BrowserMode,
  { you can add units after this }
  uCEFApplication;

{$R *.res}

{$IFDEF MSWINDOWS}
  // CEF3 needs to set the LARGEADDRESSAWARE flag which allows 32-bit processes to use up to 3GB of RAM.
  {$SetPEFlags $20}
{$ENDIF}

begin
  GlobalCEFApp := TCefApplication.Create;

  if GlobalCEFApp.StartMainProcess then
    begin
      RequireDerivedFormResource:=True;
      Application.Initialize;
  Application.CreateForm(TAR_MainForm, AR_MainForm);
      Application.Run;
    end;

  GlobalCEFApp.Free;   
  GlobalCEFApp := nil;
end.
S_Gur
постоялец
Сообщения: 136
Зарегистрирован: 30.12.2018 21:17:42

Сообщение S_Gur »

Alex2013, спасибо, попробую

Добавлено спустя 2 часа 51 минуту 39 секунд:
Alex2013, я правильно понимаю, что для вышеописанной задачи мне гораздо проще использовать Инди?
Alex2013
долгожитель
Сообщения: 3215
Зарегистрирован: 03.04.2013 11:59:44

Сообщение Alex2013 »

S_Gur писал(а):Alex2013, спасибо, попробую

Добавлено спустя 2 часа 51 минуту 39 секунд:
Alex2013, я правильно понимаю, что для вышеописанной задачи мне гораздо проще использовать Инди?
1 Пожалуйста !
2 Ну как-бы Инди изначально совместим с визуальными компонентами .
Ответить