Announcement

Collapse
No announcement yet.

Proxyserver und Verbindung zur Datenbank

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

  • Proxyserver und Verbindung zur Datenbank

    Habe seit Weihnachten einen Router angeschlossen. Dieser erwartet, dass die IP-Adresse meines Rechners automatisch vergeben werden muss. Die Rechnerkonfiguration ist D6,IB6.0,W2.

    Habe zu Testzwecken auf meinem Rechner immer den Server simuliert. Eine Einstellung extern und Name meines Rechners haben immer zu einer Verbindung zur Datenbank geführt, obwohl derselbe Rechner gemeint war.

    Mit der automatischen IP-Vergabe lässt sich dies offenbar nicht realisieren. Gibt es einen Ausweg?

  • #2
    Hallo Udo,<br>
    über dyndns kannst du dein ip immer dynamisch ermitteln
    <p>
    heik

    Comment


    • #3
      Wie lässt sich das in Delphi zur Laufzeit realisieren

      Comment


      • #4
        Hallo Udo,

        wenn das ein halbwegs aktuller Router ist, kannst du den DHCP-Server so einstellen, dass er jedem Rechner immer die gleiche IP zuteilt, gemeinhin macht man das mit der MAC Adresse des Rechners. Du musst also im Router eintragen, dass zum Beispiel der Rechner mit der MAC 00-C0-12-34-56-89 die Adresse 192.168.2.5 bekommt. In dieser Weise machst du das einmalig mit allen Rechnern in deinem Netz.<br>
        Dann editierst du noch die Datei winnt\system32\drivers\etc\hosts in dieser Form:<br>
        192.168.2.5 Name_des_Rechners<br>
        <br>
        Dann kannst du in Zukunft die Rechner über ihren Namen ansprechen.

        Floria

        Comment


        • #5
          Lieber Florian,
          habe deine Tipps ausprobiert. Leider verabschiedet sich Delphi nach dem dem Aufruf der Database immer ins Nirwana. Hast du noch einen anderen Ratschlag.
          Danke
          Ud

          Comment


          • #6
            Hallo Udo,<br>
            <br>
            Die Applikation sollte sich auf keinen Fall einfach so verabschiedn, nur weil sie die DB nicht findet. Kriegst du denn eine Fehlermeldung?
            Kannst mit der IBConsole oder mit IBExpert die Datenbank erreichen? Kannst du den Server mit seiner IP pingen? Kannst du den Server mit seinem Namen pingen? Kannst du dich an die DB verbinden, wenn du nicht über IP sondern Local verbindest?
            <br>
            <br>
            Floria

            Comment


            • #7
              Hallo Florian,

              danke für deine Antwort. Nochmal mein Problem.
              Habe bisher so getan, als sei mein Rechner auch der Server. Habe daher in Delphi mit dem Database-Objekt meine Datenbank als extern angesprochen und meinen eigenen Rechnernamen angegeben. War ne Simulation für die Umgebung an meinem tatsächlichen Arbeitsplatz. Dort hat das Programm mit dieser Einstellung den "Server" gefunden, da ich meinen häuslichen Rechner genauso genannt habe wie den Server im Büro. Nachdem ich jetzt den Router bei meinem Netzwerk zuhause eingebaut habe, findet er den Namen meines Rechners nicht mehr. Die bisher funktionierende Simulation klappt nicht mehr. Muss zuhause das Programm lokal betreiben. An meinem Arbeitsplatz auf extern umstellen. Ist halt einfach blöd. Natürlich funktioniert mein Programm, wenn ich lokal meine Datenbank anspreche.

              Vielleicht hast du noch einen Tipp parat.

              Gruß

              Ud

              Comment


              • #8
                Vielleicht hilft ein Eintrag in der hosts weiter...

                Grüße Joche

                Comment


                • #9
                  Hallo Udo,<br>
                  <br>
                  wenn ich das richtig interpretiere, ist die Vorgehensweise in deinem Programm einigermaßen rustikal.<br>
                  Wenn du deinen Rechner Zuhause genause nennen musst wie den Rechner auf der Arbeit, dann hast du den Servernamen in deinem Programmn wohl fest verdrahtet?
                  Spendier deiner Anwendung eine Ini-Datei oder einen Eintrag in der Registry, wo sie solche Angaben wie Servernamen, Pfad zur DB, benutztes Protokoll usw. beim Starten auslesen kann. Wenn beim ersten Start noch kein Eintrag existiert, fragst du den Anwender.<br>
                  Zu deinem Problem mit dem Abschmieren des Programms:<br>
                  Hast du mal die Sachen aus meinem vorigen Posting getestet? Es wäre interessant, ob der Rechner sich selbst findet, wenn er über den Namen gepingt wird.<br>
                  Dann kannst du noch testen, ob die Verbindung klappt, wenn du anstelle des Rechnernamens die IP einsetzt.<br>
                  Hast du in deinem Programm den Verbindungsaufbau in ein try...except eingebunden?<br>
                  Bist du auch mal mit dem Debugger durch den Code um herauszufinden, an welcher Stelle genau das Programm abgewürgt wird?<br>
                  <br>
                  Floria

                  Comment


                  • #10
                    Hallo Florian,

                    deine Bemerkung rustikal ist mehr als treffend.
                    Habe deine Tipps probiert. Rechner lässt sich mit Namen anpingen. Mein Problem lässt sich viel kürzer fassen. Habe nur die Komponente IB-Database auf meinem Fenster, gebe Servername = IP Adresse oder Rechnername, TCP-Verbindung und den üblichen Rest ein und drücke auf Test. Schon kann ich das Programm vergessen.
                    Natürlich könnte ich eine INI anlegen. Dachte halt, könnte alles beim Alten belassen. Trotzdem vielen Dank für deine Mühe.

                    Gruß Ud

                    Comment


                    • #11
                      Hallo Udo,<br>
                      <br>
                      hast du mal IBExpert installiert? Das gibt es in einer kostenlosen Personal Edition bei www.h-k.de.<br>
                      Probiers doch mal damit, nur um zu sehen, ob das Problem eher beim Server oder bei deinem Programm zu suchen ist.<br>
                      Im Übrigen sehe ich nicht den Zusammenhang zwischen der Routerinstallation und den dann auftretenden Problemen mit deinem Programm. Hast du noch was anderes gemacht in dem Zusammenhang?
                      Arbeitest du eigentlich mit Interbase oder mit Firebird?
                      <br>
                      Floria

                      Comment


                      • #12
                        Hallo Florian,
                        habe ibexpert installiert. Meine Interbase-Version ist wohl 6.0 aus der Originalversion von Delphi 6. Hab mit dem ibexpert versucht, meine Datenbank anzusprechen, landete prompt wieder im Nirwana. Melde ich mich local an, klappt alles bestens.

                        Wo finde ich denn die Versionsnummer meiner Interbase-Software?

                        Gruß
                        Ud

                        Comment


                        • #13
                          Hallo Udo,<br>
                          <br>
                          jetzt würde ich mal den IB Server deinstallieren um dann entweder nochmal Interbase oder besser Firebird zu installieren.<br>
                          Nach dem Deinstallieren schaust du auf der Festplatte nach, dass auch alle gds32.dll gelöscht sind. <br>
                          Wenn ich mich recht erinnere, gibt es in der Systemsteuerung ein Control Applet, die einem auch die Version verrät.<br>
                          Oder du gehst zum Installationsverzeichnis von Interbase und schaust nach den Versionsinfos der Exe.<br>
                          <br>
                          Floria

                          Comment


                          • #14
                            Vielen Dank Florian.

                            Gruß Ud

                            Comment


                            • #15
                              Hallo Udo,<br>
                              <br>
                              bist du denn jetzt weiter gekommen?<br>
                              <br>
                              Zu deiner Frage in Firebird:<br>
                              Die IBX Komponenten funktionieren auch noch mit FB 1.5.X.<br>
                              Wenn du Probleme hast, dann sehr wahrscheinlich welche mit sog. Ambigious Selects.<br>
                              Die hat Interbase und auch FB 1 falscherweise klaglos akzeptiert, FB 1.5 aber nicht mehr. Nährers dazu findet sich in den Release Notes von FB 1.5.<br>
                              Mein Tipp: Installiere FB 1.0, das ist faktisch eine fehlerbereinigte Interbase Version 6.<br>
                              <br>
                              Floria

                              Comment

                              Working...
                              X