Delphi XE2 / Intraweb12 - Изменение порта во время выполнения / глобальная переменная - PullRequest
2 голосов
/ 31 марта 2012

Я написал несколько автономных приложений для IW11, которые работали нормально, но, возможно, есть и более эффективные способы решения некоторых проблем, таких как глобальные переменные.После обновления до IW12 в Delphi XE2 мои приложения больше не работают, и я не знаю, как решить эту проблему:

В SCFORM.PAS Я создал новую форму для приложения автономного сервера.Для этого я разместил некоторые элементы управления базой данных, чтобы проверить подключение базы данных Oracle и прочитал некоторые параметры.

Для мониторинга сеансов я использую массив (данные сеансов также хранятся в базе данных).Порт был изменен после чтения информации о параметрах из базы данных с помощью

GServerControler.Port := portnum;

Но после запуска приложения я не могу подключиться к нему с помощью http:\\127.0.0.1:(portnum);Я думаю, что смена порта не работает?

Итак, мои вопросы:

  • как изменить порт во время выполнения
  • как изменить размер пула ввремя выполнения
  • правильно ли использовать глобальные переменные в SCFORM.PAS (для мониторинга сеанса) или мне следует использовать другой способ?

На данный момент в сети около 50 из 500 пользователей.в то же время, но это может быть больше в будущем.

1 Ответ

0 голосов
/ 30 января 2016

Если вы, например, сохраните номер порта в ini-файле, вы можете загрузить это значение с помощью таймера на ServerController. Кажется, он не работает должным образом, просто загружая в OnCreate. Я установил таймер по умолчанию на 1000 и отключил его после запуска кода.

Я использую форму CustomStandalone и на ней есть поле для редактирования, которое пользователь может использовать для изменения номера порта. Я загружаю значение порта в OnCreate и присваиваю его GServerController.Port.

...