[Allegro] AVANTI:EOR - mal da, mal nicht da

Sibylle Koczian Sibylle.Koczian at t-online.de
Di Jun 14 14:39:54 CEST 2011


Liebe Liste,

Folgendes kann ich mir nicht erklären: Ich habe ein Python-Modul, erst 
kürzlich auf die aktuelle Python-Version umgestellt, mit dem ich 
Avanti-Jobs ausführen lassen und die Ergebnisse entgegennehmen kann. In 
diesem Modul benutze ich einen Socket und lasse ihn für Job-Lesen und 
Ergebnis-Schreiben dateiartige Objekte erzeugen (socket.makefile). 
Vorteil: die besitzen Methoden zum zeilenweisen Schreiben und, vor 
allem, Lesen, was die Verarbeitung viel bequemer macht.

Das klappt auch gut; allerdings ist es unbedingt nötig, dass ich beim 
Empfang auf "AVANTI:EOR" prüfe, sonst kommen zwar keine Daten mehr an, 
das Programm hört aber nicht auf zu laufen. Kein prinzipielles Problem.

Weil ich aber gelegentlich doch auch ein GUI-Programm auf eine 
Allegro-Datenbank loslassen will und das mit Python eher mühsam ist, 
habe ich mir jetzt auch ein Avanti-Client-Modul in C# gebastelt. Auch 
dieses funktioniert, auch dieses ist so gebaut, dass ich Ergebnisse 
zeilenweise abholen kann (TcpClient-Objekt hat einen NetworkStream und 
dem kann man mit einem StreamWriter den Job andrehen und mit einem 
StreamReader die Ergebnisse entlocken). Und jetzt kommt das Rätsel: da 
scheint mir AVANTI:EOR nicht immer im Ergebnis aufzutauchen und ich kann 
diesen Effekt nicht reproduzieren. Gestern war es da, heute kriege ich 
es nicht her (d.h. es gelingt mir offensichtlich nicht, genau den 
gestrigen Zustand des Moduls wiederherzustellen).

Benutzt jemand in dieser Liste C#?

Meine eigentliche Hauptfrage: was schickt Avanti direkt vor und nach dem 
AVANTI:EOR? Und erinnere ich mich richtig, dass es als Zeilenumbruch 
grundsätzlich Linefeed schickt (ASCII 10), wenn man nicht explizit etwas 
anderes in den Job schreibt?

Danke und beste Grüße,
Koczian




Mehr Informationen über die Mailingliste Allegro