AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Chat über temp. Textdatei
Thema durchsuchen
Ansicht
Themen-Optionen

Chat über temp. Textdatei

Ein Thema von Evian · begonnen am 14. Okt 2004 · letzter Beitrag vom 15. Okt 2004
Antwort Antwort
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#1

Chat über temp. Textdatei

  Alt 14. Okt 2004, 12:56
Hallo Zusammen,

ich studiere zur Zeit Wirtschaftsinformatik und es kommt schon das eine oder andere mal vor, dass das was der Prof. da so erzählt entweder "arg trocken", "total *gähn*", oder schon 100mal gehört wurde. So geht es nicht nur mir, sondern auch ein paar anderen Studenten und so habe ich mir gedacht einen kleinen Chat zu coden, mit dem wir die "wichtigeren Dinge des Lebens" untereinander austauschen könnten. Gesagt -> Getan! Der Chat ist fertig, nur habe ich inzwischen mitbekommen, dass so gut wie alle Ports im Rechenzentrum gesperrt sind und somitt ein Chat über TCP/IP unmöglich wird. Nun sind wir dabei uns zu überlegen, wie man den Chat trozdem realisieren könnte und sind auf die Idee gekommen, das Ganze über eine temporäre Textdatei zu machen, die auf einem für alle zugänglichen Netzlaufwerk liegt. Das Laufwerk existiert und es hätten auch alle Lese/Schreibrechte, nur denke ich, dass das ganze relativ schwierig zu realisieren ist, wenn man dafür sorgen will, dass auch alle "Chatter" immer alle Chatnachrichten bekommen sollen. Also ich meine, es ist recht schwierig für einen Clienten zu überprüfen, ob schon alle anderen Clients die letzte Nachricht aus der Textdatei gelesen haben und ob nun die Datei mit einem neuen Inhalt überschrieben werden kann. An sich, mit einem Timer immer den Text auslesen bzw. zu überschreiben, wäre das Leichtestete... aber wäre das Chatvergnügen sicherlich nicht das Größte, wenn des öfteren nicht alle Nachrichten ankommen würden. Einfach immer nur die neuen Nachrichten hinten ranzuhängen, an den Textdateiinhalt wäre auch nicht besonders clever, weil dann die Dateigröße relativ schnell sehr groß werden würde und dann wäre eine ordenliche Kommunikation auch nicht mehr gewerleistet.

Also meine Frage nun, hat jemand eine Idee, wie man das möglichst Clever angehen könnte bzw. ob es noch andere Möglichkeiten gibt um eine Kommunikation zu ermöglichen?! Ich hab mich noch nicht so viel mit Datenbanken beschäftigt, aber könnte man da nicht irgenwie was machen... also quasie mit einer exportierten Datenbankstruktur oder?!


Also wenn wer ne Idee hat, würde ich mich sehr über die Hilfe freuen!!!!!

gruss

Evian
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
Fourcorner

Registriert seit: 26. Aug 2004
Ort: Grenzach-Wyhlen
51 Beiträge
 
Delphi 7 Personal
 
#2

Re: Chat über temp. Textdatei

  Alt 14. Okt 2004, 13:34
Solly,
wenn du nur text in die Datei schreibst wird die datei bestimmt nicht so groß. Falls dies doch der fall ist, kannst du ja am ende der Datei ein anmerkung machen, aus einer zweiten datei zu lesen, und (nachdem du dir sicher bist, dass die Datei nicht meht gelesen wird) löschen.

Das problem an der ganzen sache ist, das immer nur ein PC gleichzeitig auf die Datei zugreifen kann.
Julian
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Chat über temp. Textdatei

  Alt 14. Okt 2004, 13:43
Zitat von Evian:
dass so gut wie alle Ports im Rechenzentrum gesperrt
Dann such Dir doch einen freien Port! Oder nimm einen Rechern auf dem kein WebServer läuft. Dann kannst Du auch Port 80 verwenden. Ich nehme mal an, dass Port 80 frei ist.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Elite
(Gast)

n/a Beiträge
 
#4

Re: Chat über temp. Textdatei

  Alt 14. Okt 2004, 13:46
Genau in die Richtung würde ich auch versuchen, voran zu kommen. Nimm doch einen der wenigen Ports, die frei sind - auch wenn es halt gerade Port 21 oder 80 sein muss. na und?
Setze an den Anfang jeder Textmessage (generell jeder Kommunikationsmessage deiner Anwendung) 4 Indikator Bytes, die angeben, ob die Daten für deinen Chat bestimmt sind oder irgendwas anderes bedeuten. Dann verarbeitest du nur diese und voilà: der Chat läuft.
  Mit Zitat antworten Zitat
Benutzerbild von SleepyMaster
SleepyMaster

Registriert seit: 18. Mai 2003
634 Beiträge
 
#5

Re: Chat über temp. Textdatei

  Alt 14. Okt 2004, 16:43
Vielleich hilf dir das ja ein wenig: ftp://sleepymaster.dyndns.org/UDP%20Chat.rar

Über UDP - Der Quelltext ist aber wirklich allerübelste Sau
  Mit Zitat antworten Zitat
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#6

Re: Chat über temp. Textdatei

  Alt 15. Okt 2004, 10:55
du kannst auch daten über das dns protocol verschicken
oder die ganze geschichte anderweitig tunneln
  Mit Zitat antworten Zitat
Benutzerbild von Evian
Evian

Registriert seit: 10. Apr 2003
Ort: Berlin
485 Beiträge
 
Delphi 6 Professional
 
#7

Re: Chat über temp. Textdatei

  Alt 15. Okt 2004, 11:39
Danke erstmal für die Ideen!

@Fourcorner: Es muss niemand immer auf die Datei zugreifen, sondern jeder nur sehr kurz, wenn man den Kontent ließt bzw. schreibt. Man kann ja den Contontent z.B. in eine Liste von Strings laden. Wenn ich nun aber immer den neuen Text unten anhänge, dann wird die Datei absolut betrachtet nicht sehr groß, aber wenn ich(bzw. alle Clients) alle 500Millisek. schauen, ob der Kontent sich verändert hat, dann enteht selbst bei 10KB doch ein relativ hoher traffic. Würde immer nur die Aktuelle Chatnachricht enthalten sein, wäre das zu verkraften.

@Elite u. Jens Schumann.: Wir haben an der Uni einen Herren, der wohl sehr um die Sicherheit seiner IT besorgt ist und der das System wirklich krass abgesichert hat. Alle bis auf die Standartports(FTP, http etc.) sind gesperrt und wenn man über die Standartports kommunizieren will, erkennt das das System und verbietet es, dass mehr als ein Programm(Server oder Clientappl.) über diesen Port kommuniziert. Leider gibt es für jeden offenen Port ein Programm was da läuft und es einfach zu beenden würde der Prof. schnell an dem Lektorrechner erkennen. Nicht mal Pingen ist möglich... keine Ahnung was da gemacht wurde.

@SleepyMaster: Ich schau mir mal den UDP Chat an, kann mir aber irgendwie nicht so richtig vorstellen, dass das bei der Absicherung nicht mit bedacht wurde.

@endeffects: Kannst Du das vielleicht noch ein bischen genauer erklären?! Hab keine Ahnung, wioe Du das meinst.

gruss


Evian
-> www.Phillsoft.de

Ich bin nun Mathematiker, aber meine Freundin bleibt trotzdem unberechenbar!
  Mit Zitat antworten Zitat
Benutzerbild von fiasko
fiasko

Registriert seit: 10. Dez 2002
Ort: Dresden
506 Beiträge
 
#8

Re: Chat über temp. Textdatei

  Alt 15. Okt 2004, 11:48
Zitat von Evian:
@endeffects: Kannst Du das vielleicht noch ein bischen genauer erklären?! Hab keine Ahnung, wioe Du das meinst.
Ganz einfach: du mißbrauchst das DNS Protokoll indem du die Chat-Daten in DNS Abfragen verpackst. Wenn jemand etwas sagt, dann machste einfach ein DNS Query der Arte blaah.codiert.text.blah.meine-domain.net und ein frisierter DNS Server verarbeitet das dann als Chat-Text. Die Clients müssen dann natürlich noch regelmäßig den Server pollen und der gibt in einer speziellen Anfrage den neuen Text als TXT Record zurück.


Ich denke aber so kompliziert wirst du es nicht machen wollen/können/müssen. Wenn HTTPS Zugelassen ist dann ist das das vernünftigste Protokoll, was du für deine Sachen mißbrauchen kannst - auch wenn ein Proxy dazwischen hängt. Du sagst dem Proxy einfach CONNECTe mich mal mit dem und dem Rechner und dann läßt er alles ungesehen durch - das einzige ist das das CONNECT üblicherweise auf ein (paar) well known Port(s) beschränkt ist.
Thomas Liske
Posts comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
  Mit Zitat antworten Zitat
Fourcorner

Registriert seit: 26. Aug 2004
Ort: Grenzach-Wyhlen
51 Beiträge
 
Delphi 7 Personal
 
#9

Re: Chat über temp. Textdatei

  Alt 15. Okt 2004, 13:09
Solly,
neue Idee. Du schreibst eine Datei, in der steht, wann der letzte Eintrag hinzugefügt wurde.
In eine zweite Datei schreibst du den Chat. Befor man nun die Chatdatei öffnet, überprüft man zuerst, ob etwas neues in den chat gekommen ist(diese Datei ist ja nur ein DateTime-Eintrag, ergo sehr klein).
Julian
  Mit Zitat antworten Zitat
Benutzerbild von fiasko
fiasko

Registriert seit: 10. Dez 2002
Ort: Dresden
506 Beiträge
 
#10

Re: Chat über temp. Textdatei

  Alt 15. Okt 2004, 14:05
Hallo,

mir ist noch etwas eingefallen: wenn das Windows Netzwerk freigegeben ist sollte das ganze mit Named Pipes gehen - soweit ich weiß gehen die auch zwischen 2 Winplöd Rechnern. Such am besten mal im DP-Archiv danach...
Thomas Liske
Posts comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
  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 19:07 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