AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Statt IP´s Rechnernamen benutzen
Thema durchsuchen
Ansicht
Themen-Optionen

Statt IP´s Rechnernamen benutzen

Ein Thema von flomei · begonnen am 2. Jul 2003 · letzter Beitrag vom 3. Jul 2003
Antwort Antwort
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#1

Statt IP´s Rechnernamen benutzen

  Alt 2. Jul 2003, 18:45
Kann ich irgendwie statt einer IP den Rechnernamen nehmen? Der Server ändert seine IP (kriegt eine neue über nen DHCP Server) bei jedem Start. Könnten die Clients nicht versuchen sich an den Rechnernamen zu verbinden?

MfG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#2
  Alt 2. Jul 2003, 18:48
Das ist aus dem "Easy Delphi Helper". Vielleicht hilft dir das ja weiter.

Zitat:
IP-Adresse über den Computernamen herausfinden


Die untenstehende Routine liest die IP-Adresse aus dem Computernamen aus. Der entscheidende Bestandteil ist die Funktion GetHostByName.

Delphi-Quellcode:
Uses
  WinSock;

FUNCTION GetIpAddressByName(const AComputerName: STRING): STRING;
VAR
  TMPResult: STRING;
  WSA: TWSAData;
  H: PHostEnt;
  P: PChar;
BEGIN
  IF WSAStartUp($101, WSA) = 0 THEN
    BEGIN
      GetMem(P,255 + 1);
      StrPCopy(P, ComputerName);
      H:=GetHostByName(P);
      FreeMem(P);
      IF H <> NIL THEN
        BEGIN
          P:=inet_ntoa(PInAddr(H^.h_addr_list^)^);
          TMPResult:=StrPas(P)
        END;
      WSACleanUp;
      IF TMPResult <> 'THEN
        Result:=TMPResult
      ELSE
          Result:= '0';
    END;
END;
Ein Aufruf könnte so aussehen:

Delphi-Quellcode:
Procedure Tform1.Button1Click(Sender: Tobject);
Begin
  Edit2.Text:= GetIpAddressByName(Edit1.Text);
End;
  Mit Zitat antworten Zitat
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#3
  Alt 2. Jul 2003, 18:53
Naja was ich meine wäre so etwas:
TCPClient1.RemoteHost := 'Marone' Marone heisst der Server... Alle Rechner haben bei uns in der Schule Baumnamen...

Er kompiliert das auch ohne jeglichen Widerstand. Mich würde nur halt interessieren ob das schon mal jemand ausprobiert hat.

MfG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#4
  Alt 2. Jul 2003, 19:12
Wie gesagt, ich hab das nur kopiert. Verwendet hab ich sowas noch nicht. Tut mir leid.

Man liest sich, Stanlay
  Mit Zitat antworten Zitat
Marco Haffner
(Gast)

n/a Beiträge
 
#5
  Alt 2. Jul 2003, 20:08
Kannst Du denn keine Standard-IP-Adresse festlegen?
Ich bekomme meine IP auch von einem DHCP-Server zugewiesen,
das ist aber immer die Adresse, die als Standard festgelegt habe.
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#6
  Alt 2. Jul 2003, 22:18
Hallo flomei,
google mal ein bißchen nach WINS
Zitat:
Abkürzung für "Windows Internet Name Service" • WINS ist Microsofts System zur Namenauflösung. Es funktioniert im Prinzip wie DNS, ist aber dynamisch: Geht ein neuer Host ans Netz, registriert er seinen Namen automatisch beim WINS-Server, sodass ein manueller Eingriff wie bei LMHOSTS- oder HOSTS-Dateien nicht nötig ist.
bye
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#7
  Alt 3. Jul 2003, 10:54
Hai flomei,

wenn Du denn Computer unter seinem Namen anpingen kannst dann brauchst Du die TCP/IP-Adresse nicht angeben. In diesm Fall hättet ihr im Netzwerk eine WINS oder DNS auflösung für die Namen.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#8
  Alt 3. Jul 2003, 16:04
Moin Florian,

als Ergänzung zu Sharkys Beitrag:
Wenn die Hosts verwendet wird (z.B. in C:\WINNT\SYSTEM32\DRIVERS\ETC\HOSTS, Textdatei ohne Endung), kann die Zuordnung von Rechnername und IP auch über diese erfolgen.

Aber es hilft alles nichts:
Du musst einen festen Bezugspunkt haben, an dem die Namensauflösung erfolgt, sei es nun DNS, WINS, HOSTS oder eine Kombination. Ist davon nichts verfügbar, wird das nicht gehen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  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 09:27 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