AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke [IntraWeb] Port dynamisch einstellen
Thema durchsuchen
Ansicht
Themen-Optionen

[IntraWeb] Port dynamisch einstellen

Ein Thema von pustekuchen · begonnen am 15. Dez 2010 · letzter Beitrag vom 28. Mär 2011
Antwort Antwort
Benutzerbild von pustekuchen
pustekuchen

Registriert seit: 27. Aug 2010
265 Beiträge
 
Delphi 11 Alexandria
 
#1

[IntraWeb] Port dynamisch einstellen

  Alt 15. Dez 2010, 11:43
Guten Tag,

ich bins mal wieder
Ich möchte gerne von meinem IntraWeb Dienst/Server den Port dynamisch einstellen.
Mir sind 2 Wege eingefallen.
  1. Den Dienst/Server mit Parametern starten und den Port beim starten festlegen.
  2. Oder zur Laufzeit den Port ändern.
Zu 2.:
Den Port kann man einfach im ServerController.Port ändern. Doch es zeigt keine Wirkung, ich denke der Server muss restartet oder reaktivert werden. Doch leider hab ich dazu nichts gefunden.

Wie könnte man diese beiden möglichkeiten realisieren?

Gruß
pustekuchen
Delphi programming is awesome.
  Mit Zitat antworten Zitat
Benutzerbild von pustekuchen
pustekuchen

Registriert seit: 27. Aug 2010
265 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: [IntraWeb] Port dynamisch einstellen

  Alt 15. Dez 2010, 13:08
Soo,

hab das mit den Parametern teilweise hinbekommen.
Hab im OnCreate des ServerControllers folgendes geschrieben.
Delphi-Quellcode:
if ParamCount > 0 then
  begin
    if ParamStr(1) = '-portthen
    begin
      IWServerController.Port := StrToInt(ParamStr(2));
    end;
  end;
Dies klappt auch wenn ich mein Server als .exe starte und die parameter hinzufüge.
Doch wenn ich das ganze als Dienst laufen lasse, klappt es nicht mehr.
Ich habe versucht in den Eigenschaften des Dienstes die Parameter zu setzten, doch leider ohne erfolg.
Wodran könnte es liegen?
Delphi programming is awesome.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

AW: [IntraWeb] Port dynamisch einstellen

  Alt 15. Dez 2010, 16:07
Nicht auf die Funktionen ParamCount und ParamStr zugreifen, sondern auf die Properties [TService].ParamCount und [TService].Param.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von pustekuchen
pustekuchen

Registriert seit: 27. Aug 2010
265 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: [IntraWeb] Port dynamisch einstellen

  Alt 15. Dez 2010, 16:20
Mhh hört sich eigentlcih gut an, nur leider hab ich mit IntraWeb keinen Zugriff auf TService.

Es wird lediglich IWInitService eingebunden und dann IWRun aus IWInitService aufgerufen.
Delphi programming is awesome.

Geändert von pustekuchen (15. Dez 2010 um 16:23 Uhr)
  Mit Zitat antworten Zitat
egentur

Registriert seit: 27. Sep 2006
Ort: Freising
60 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#5

AW: [IntraWeb] Port dynamisch einstellen

  Alt 28. Mär 2011, 23:17
Hallo
ich hab das über ein IniFile gelöst.

Im Servercontroller beim ControllerBaseCreate

procedure TIWServerController.IWServerControllerBaseCreate(S ender: TObject);
begin
inherited;
Port := AppIniFile.ReadInteger('Port',8888);
CacheDir := AppPath+'Temp\';
CacheExpiry := AppIniFile.ReadInteger('CacheExpiry',480);
end;

AppIniFile ist hierbei eine Komponente
vom Typ TJvAppIniFileStorage aus den JEDI Bibliotheken
aber jedes normale INI File sollte funktionieren.
Auf diese Weise kann man alle möglichen Properties des ServerControllers beim Start einstellen. s.o.

Ich kompilieren meine Anwendung immer gleichzeitig als Standalone und als Service.
Als Standalone mach ich die Settings (Port, CacheExpiry etc) und schreibe das IniFile,
der Service liest dieses dann beim Start.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz