![]() |
einzelne Variable versenden
Hallo... ich bins mal wieder :D
so jetzt wo ich mich wieder ein wenig in delphi eingearbeitet habe und die simplen dinge behersche außer klassen bezeichnung und erstellung ( da muss ich ab un zu noch ma nachshcauen) wollte ich mich mal so langsamm ans internet/netzwerk wagen.Sprich ich wollte zewcks übung nur eine einzelene variable zuerst an eine bestimmte Ip adresse senden und dann an eine unbestimmte( sprich 2 leute ham ein un das selbe Programm und das Programm tauscht daten via internet aus ähnlich wie ein computerspiel wo man auch nie weiß wo der gegenüber ist geschweige den wie seine IP adresse ist) nun naja aber erst mal wie gesagt will nur eine einzelnen wert einer Variable zu einer bestimmten Ip adresse senden wo das gleiche delphi Programm dann diesen in ein edit feld anzeigt dieses edit feld kann man dann wieder ändern und zurück zum andern rechner schicken wo dieses wieder in einen edit feld geändert werden kann und so weiter und so weiter..... so die benutzeroberfläsceh ist schon fertig ist ja das eifnachste xD aber was für befehle bzw was für ,von delphi vorgegebene methoden gibt es um dies zu bewerkstelligen ich hab nämlich keien Ahnung :( |
AW: einzelne Variable versenden
Dafür müsstest Sockets verwenden. Oder besser abtraktere Netzwerkkomponenten ( z.B. Indy, Synapse, ICS)
Zudem solltest du dich zuerst mit etwas Netzwerktheorie befassen |
AW: einzelne Variable versenden
wo bzw wie kann ich mich am besten damit befassen......
bzw heißt es das es viel schwerer ist als gedacht? |
AW: einzelne Variable versenden
Grundsätzlichg nicht, man sollte halt wissen wie Netzwerke funktionieren
|
AW: einzelne Variable versenden
also bis jetzt hatte ich so das bild von netzwerken das halt alles über Ip adressen läuft sprich computer können nur miteinander komunizieren wenn sie ihre IP adressen (was wie ne normale postadresse ist) kennen das selbe spiel ist ja auch mit meinen drucker und so xD da muss mein rechner ja auch die IP adresse wissen um den dann das datenpacket was er drucken soll zu sschicken
oder steckt da etwa noch mehr dahinter? |
AW: einzelne Variable versenden
Das meinte ich ja. Du musst die Adresse deines Gegenübers kennen. es schien ine deiner ursprünglichen Frage so, als ob dir das nicht klar wäre
|
AW: einzelne Variable versenden
Zitat:
Was passiert bei Paket-Kollisionen? Werden sie erkannt? Kann das zu Datenverlust führen oder werden Kollisionen vermeidet bzw. Pakete dann neu gesendet? ![]() Da gibt es natürlich noch ganz andere Dinge. Also es steckt viel mehr dahinter. Das nur zu deiner Frage. ;) Doch so genau musst du das für deine Aufgabenstellung nicht wissen. Wie man mit den Indys sowas löst, sollte in der DP zu finden sein. Evtl. unter dem Stichwort "Chat" (das ist im Prinzip nichts anderes als ein Austausch von Variablen). |
AW: einzelne Variable versenden
ne zu anfangs will ich ja an eine bekannte IP adresse einen wert schicken sagen wir so vom abreitszimmerrechner zum wohnzimmer rechner beide IPs siind mir ja bekannt.
aber wenn ich damit mich dann sicher fühle wollte ich dann einen schritt weiter gehen und dann sozusagen das programm so schreiben das ich zu jeden der das programm hat quasi diesn wert schicken kann.. also als beispiel jetzt irgend nen spiel ich spiele ja mit jmd irgend nen strategie spiel über internet und ich kenne seine Ip adresse auch net aber ich sehe in trotzdem in der lobby... wie das ggeregelt ist weiß ich ja nciht weil wie gesagt eigentlic müsste ich ja dann die Ip adresse von den jenigen kennen aber erst mal klein anfangen und zwichen meinen beiden rechnern hin und her schicken :D |
AW: einzelne Variable versenden
In diesem Fall gibt es einen Server, der die IP der möglichen Empfängern kennt.
|
AW: einzelne Variable versenden
Zitat:
|
AW: einzelne Variable versenden
Zitat:
|
AW: einzelne Variable versenden
INDY ist bei Delphi dabei. Es handelt sich um Netzwerkkomponeten. Diese Kapseln Sockets und implementieren auch Protokolle (HTTP, FTP, SMTP, ...) auf höheren Schichten
|
AW: einzelne Variable versenden
Zitat:
Aber versuche erst die grundlegenden Dinge (Datenaustausch) umzusetzen. Zitat:
![]() |
AW: einzelne Variable versenden
ohh okay jetzt sehe ich grade das ich da noch EINIGEs lernen muss weil von deiner letzten antwort kam mir kein begriff bekannt vor xD
|
AW: einzelne Variable versenden
Welche Begriffe meinst du?
|
AW: einzelne Variable versenden
und wenn ich diese komponenten installiert habe sehe ich sie ganz normal in objektinspektor oder?
|
AW: einzelne Variable versenden
Lass mich raten ;)
Zitat:
|
AW: einzelne Variable versenden
Zitat:
|
AW: einzelne Variable versenden
Es sind normale Komponenten, welche du auf das Formular legen kannst und dann im OI die Werte der Instanz festlegen kannst
|
AW: einzelne Variable versenden
Zitat:
|
AW: einzelne Variable versenden
Zitat:
Die Sprache kann man mit Protokollen vergleichen |
AW: einzelne Variable versenden
ahhh okayy
puhhhhhhhhhh das klingt nach ganz viel arbeit fürr mich um nur einen wert zwichen meine nbeiden rechnern zu schicken also noch mal zusammen fassung.. ich muss indy für delphi downloaden und danach mich mit den komponenten mit hilfe von DP vertraut machen und dann erst(was wahrshceinlich nen bisschen dauern wird) könnte ich es vlt schaffen einen wert via netzwerk zu verschicken so nun ist aber noch ma ne frage xD wenn ich es schaffen sollte diesen wert zu schicken wird ihn dann die firewall nciht blockieren? xD |
AW: einzelne Variable versenden
Vortiel der Protokolle ist es, dass man nicht unbedingt etwas von den Details wissen muss.
|
AW: einzelne Variable versenden
Moin,
das mit der Firewall hängt immer davon ab, was das für eine ist. Wenn zum Beispiel nur der Router eine Firewall hat, dann könnt ihr innerhalb eures Netzes schicken wie ihr lustig seid. Erst wenn der Router routen muss (d.h. die Adresse liegt in verschiedenen Netzen) dann könnte die Firewall zuschlagen. Und ganz so schwer ist das nun auch nicht ;) Du hast zwei Anwendungen und lässt zwischen beiden eine Verbindung aufbauen und kannst dann eigentlich schon fast übertragen. Wichtig ist halt nur dass die Verbindung kompatibel/gleich ist. Also ich würde zum Beispiel TCP/IP oder UDP empfehlen. TCP/IP ist (evtl.) langsamer als UDP, aber du kannst dir sicher sein, dass die Pakete auch ankommen. Bei UDP hingegen kann es sein, dass das Paket irgendwo auf der Strecke verloren geht. Aber beides läuft ähnlich ab: Du hast zwei Komponenten (kA ob in Indy das auch in einer geht). Einer lauscht auf neue Nachrichten und der andere versendet diese. Dann sagst du nur noch dem Versender: Versende irgendwas (z.B. ein Byte mit den Wert 42) und schickst es an eine IP. Und jeder der mit der IP angesprochen wird (z.B. Broadcast vs. Unicast) empfängt dann den Wert und kann damit arbeiten. Das ist so das grundlegende und ich hoffe ich habe nicht zu viel Mist verzapft. Wichtig ist eventuell bei allen Firewalls zwischen den Sender und Empfänger, dass sie den Port durchlassen. Aber solange du in dein Netzwerk bleibt, sind das (wie oben schon gesagt) nur die beiden Rechner der sendet und der Rechner der empfängt. Dann fragt Windows schon selber nach, ob die Firewall das durchlassen soll. MfG Fabian |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz