Announcement

Collapse
No announcement yet.

IB-Server sehr langsam, wenn mittels CreateProcess gestartet

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • IB-Server sehr langsam, wenn mittels CreateProcess gestartet

    Hallo,<p>

    in meinem Delphi-Programm teste ich, ob der IB-Server 6.01 schon laeuft,
    und falls nicht, wird er gestartet. Das mache ich entweder
    mit CreateProcess oder mit ShellExecute (der unten geschilderte
    Effekt taucht beide Male auf).<p>

    Falls der IB-Server auf diese Art vom Programm gestartet wurde,
    dauert der Verbindungsaufbau zu einer Datenbank (mittels einer TIBDatabase)
    ca. 20 Sekunden. Das bleibt auch so, wenn ich die Anwendung
    beende und mit der IBConsole eine Verbindung zum IB-Server
    herstelle. Erst wenn ich den IB-Server beende und erneut
    direkt starte ('ibserver.exe -a') geht alles wieder wie
    geschmiert. Falls ich IBGuard anstelle des Servers starte,
    passiert genau das gleiche.<p>

    Der Effekt taucht allerdings nur unter Win 2000 auf (der IB-Service
    ist dann natuerlich nicht gestartet). Unter Win 98 geht es problemlos.<p>

    Hat jemand schon mal sowas beobachtet?<p>

    Danke, Klaus

  • #2
    Nein, denn das Programm hat die Finger vom Server zu lassen

    Comment


    • #3
      Nun ja, die IBConsole startet ja auch den IBServer, wenn er noch nicht laeuft. Und nichts anderes will ich machen.<P>

      Ich mache es auch genauso, wie Jeff Overcash es mal auf borland.public.delphi.database.interbaseexpress vorgeschlagen hat.
      Deshalb gehe ich mal davon aus, dass das nichts Verbotenes ist

      Comment


      • #4
        Hallo,

        unter Windows 2000 (und NT) sollte der InterBase als Dienst (Service) laufen. Über den SCM (Service Control Manager) kann man mit Hilfe der vorgesehenen API-Funktionen (OpenSCManager, OpenService, StartService) jeden Dienst starten und stoppen.

        P.S: Ein Entwickler sollte <b>niemals</b> davon ausgehen, dass sein Programm das einzigste Programm ist, das auf eine InterBase-Datenbank zugreift. Wer direkt den Server startet und stoppt, richtet unter Umständen Flurschäden für Drittanwendungen an.
        &#10

        Comment


        • #5
          Hallo,<p>

          ok, überzeugt. Dann gebe ich halt nur eine Meldung aus, dass der Server noch nicht läuft. <p>

          Danke für die Antworten.<p>
          Klau

          Comment

          Working...
          X