Kleiner Chat mit library von Chevron tuts nicht

Übersicht BlitzBasic BlitzPlus

Neue Antwort erstellen

DA

Betreff: Kleiner Chat mit library von Chevron tuts nicht

BeitragFr, Feb 25, 2005 17:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Moin,

Ich habe vor ein paar mit einem kleinen Chat angefangen. Doch leider sitz ich heute schon den ganzen Tag daran um den Fehler zu finden. Doch leider will es mir nicht gelingen. Sad
Also mein Problem ist wen ich den Chat starte, und dan den Nick eingeben habe, das er einfach hängen bleibt. Wie schon gesagt habe ich keine ahnung warum das so sein könnte.
Also hier mal der code: http://www.sucox.art-fx.org/Bl...e=chat.rar

Ich hoffe jemand kann mir helfen.

thx
DarkAngel
Deutscher Blitz Basic Chat

Ayman

BeitragSo, Feb 27, 2005 4:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi DarkAngel,

vorab: Ich hoffe ich hatte dich im Chat richtig verstanden, dass Du zunächst Probleme mit der FTP-Funktion hattest?

Ich hab mir diese externe FTP lib mal angesehen und muss dir sagen, dass ich wenig davon halte. Es ist schlicht schlecht geschrieben (ist ja nicht von Dir Smile. Wenn's dich interessiert, schreibe ich dir gerne ausführlicher, wieso ich das glaube.

Ich schlage Dir eine Alternative vor. Warum das Rad immer wieder neu erfinden? Jeder Windows Benutzer (ich glaube es zumindest) sollte einen FTP-Commandozeilen Client auf der Platte haben, denn der gehört schon seit langem zu Windows. Das Ding nennt sich der Einfachheit halber "ftp" und ist in der Lage Scripte zu verabeiten. Den kannst du mit einem einfachen Befehl aus BlitzBasic heraus starten. Außerdem kannst du damit alle Verbindungsrelevanten Dinge auch ohne BlitzBasic debuggen, was ich praktisch finde.

Das folgende Beispiel verbindet mit dem FTP-Server auf 192.168.0.100, sendet Usernamen und Passwort (ist Username 'anonymous', dann die Passwortzeile einfach weglassen) und holt dann die Datei 'Aufgaben.doc' aus dem 'pub\'-Verzeichnis des Servers und legt sie bei dir lokal als 'd:\aufgaben.doc' ab.

Du erzeugst eine Textdatei mit folgendem Inhalt:Code: [AUSKLAPPEN]
open 192.168.0.100
meinUsername
meinPasswort
cd pub
get Aufgaben.doc d:\aufgaben.doc
close
bye

Speichere diese Datei zum Beispiel in dem Verzeichnis, in dem auch das BlitzBasic-Programm liegt unter dem Namen: 'get_aufgaben.ftp'

Zwei einfache Möglichkeiten dies zu starten:
1. In der Commandozeile der DOS-Box oder von 'cmd.exe' mit Code: [AUSKLAPPEN]
ftp -s:get_aufgaben.ftp

2. Von BlitzBasic ausCode: [AUSKLAPPEN]
ExecFile "ftp -s:get_aufgaben.ftp"


Wenn du in dem kurz aufgehenden cmd-Fenster keine Meldungen sehen willst, dann ändere den Befehl in 'ftp -s:get_aufgaben.ftp >nul' um.

Helps zum Thema:
FTP Console Client
... oder versuch mal 'ftp -help' auf der Kommandozeile (cmd.exe / command.com).
... oder starte den client mit 'ftp' und anschließend 'help <commando>'. Mit 'bye' beendest du den FTP-Client.


In deinem BlitzBasic-Programm kannst du natürlich diese Script-Datei auch von Hand erzeugen und somit unterschiedliche Dateien downloaden. Du kannst auch die Ergebnisse eines ftp-dir Kommandos etwa in eine Datei umlenken und dann von BlitzBasic auslesen.

Die Ausgaben des FTP-Clients in eine Datei umlenken geht so:Code: [AUSKLAPPEN]
ftp -s:get_aufgaben.ftp >datei.txt

Grüße
Ayman
uomini cercano uomini
 

lettorTrepuS

BeitragSo, Feb 27, 2005 10:56
Antworten mit Zitat
Benutzer-Profile anzeigen
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger.

DA

BeitragSo, Feb 27, 2005 16:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Moin,

@ Ayman
das was du meintest hatte ich vorher. Doch leider fande ich das nicht so gut, weil wen sich das Programm mit dem server Connected hat, wurde die Eingabeaufforderung dargestellt. Nach einiger Zeit geht das auf die Nerven, und habe mich dan etwas mit TCP beschäftigt, weil dort ja keine MS Dos Konsole geöffnet werden muss. Könntest du bitte genauer erklären was an der Lib nicht so ganz korrekt ist? Bis jetzt ist mir noch nichts schädliches an der Lib aufgefallen.

Thx
DarkAngel
Deutscher Blitz Basic Chat

Ayman

BeitragMo, Feb 28, 2005 4:31
Antworten mit Zitat
Benutzer-Profile anzeigen
@DarkAngelZitat:
das was du meintest hatte ich vorher. Doch leider fande ich das nicht so gut, weil wen sich das Programm mit dem server Connected hat, wurde die Eingabeaufforderung dargestellt. Nach einiger Zeit geht das auf die Nerven,

Das ist sicherlich Geschmackssache. Bei mir poppt die Console nur für einen kurzen Moment auf und macht sich dann wieder vom Acker. Erfreulich ist doch, dass es funktioniert, einfach und modular ist - so seh ich das jedenfalls.

Zitat:
... und habe mich dan etwas mit TCP beschäftigt, weil dort ja keine MS Dos Konsole geöffnet werden muss. Könntest du bitte genauer erklären was an der Lib nicht so ganz korrekt ist? Bis jetzt ist mir noch nichts schädliches an der Lib aufgefallen.

Die Lib ist in meinen Augen Crap, weil:
:: Funktionale Gründe ::
1. sie nicht funktioniert
2. sie bei verschiedenen Starts bei mir im Test unterschiedlich weit kam
3. sie nicht darüber Auskunft gibt, woran sie jeweils konkret scheitert (!)

:: Die Sourcen ::
4. die Sourcen zeigen, dass sich der Autor wenig bis gar nicht ums Testen gekümmert hat - Fehlerfälle werden nicht weiter untersucht - nützliche Fehlermeldungen werden nicht ausgegeben - es wird kein Log erstellt
5. im Code globale und lokale Variablen gleichen Namens für wichtige Daten verwendet werden. Die globalen Variablen werden aber im Code der Lib selbst NICHT gesetzt. Das Prinzip Initialisierung vor Benutzung wird demnach nicht beachtet.
6. Die 'Lib' ist nach heutzutage üblichen Qualitätskriterien strenggenommen keine Lib, da sie ihre Funktionalität nicht vernünftig kapselt und eigenmächtig globale Änderungen vornimmt - siehe Punkt 5., sie beschreibt hin und wieder eigenmächtig den Bildschirm, ändert Farben, enthält gar den Befehl RuntimeError(), etc.
7. nicht dokumentiert ist zu welchen Spielarten/Standards von FTP Kompatibilität bestehen soll (geschweige denn, dass es eine Zertifizierung durch die Verwalter des Standards gäbe, wie das bei Libs, die einen derart etablierten Standard bedienen, vielerorts üblich ist).

Daraus folgt, dass man ...

8. um als User dieser Lib konkrete Fehler beheben zu können, sich:
8.a. einen FTP-Server anschaffen muss, um an dessen Logs zu überprüfen, was eigentlich schief gelaufen ist
8.b. sich zusätzlich, um die Logs des Servers oder schlicht den Verlauf der fehlerhaften Kommunikation verstehen zu können, mit den Protokollen TCP und FTP eingehend beschäftigen muss, was
9. letztlich für mich bedeuten würde das ganze Teil neu zu schreiben, da weder das Design noch die Funktion noch die Ausführung der Lib geeignet erscheinen sie zu ergänzen.

Grüße
Ayman
uomini cercano uomini
 

lettorTrepuS

BeitragMo, Feb 28, 2005 12:10
Antworten mit Zitat
Benutzer-Profile anzeigen
-aus Sicherheitsgründen gelöscht- Diese Information ist mit Ihrer Sicherheitsfreigabe leider nicht erhältlich, Bürger.

Neue Antwort erstellen


Übersicht BlitzBasic BlitzPlus

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group