Xojo Conferences
MBSSep2018MunichDE
XDCMay2019MiamiUSA

Socket Frage (Real Studio network user group Deutschland Mailinglist archive)

Back to the thread list
Previous thread: Close-Event
Next thread: Fwd: ListBox Sorting


AW: RB Programme unter Jaguar   -   gerhard queisser
  Socket Frage   -   Stefan Sicurella
   Re: Socket Frage   -   Stephan Huber
    Re: Socket Frage   -   Stefan Sicurella
     Re: Socket Frage   -   Robert Lach
      Re: Socket Frage   -   Stefan Sicurella
       Re: Socket Frage   -   Robert Lach
        Re: Socket Frage   -   Stefan Sicurella
      Re: Socket Frage   -   Stefan Sicurella
       Re: Socket Frage   -   Robert Lach

Socket Frage
Date: 07.08.02 13:41 (Wed, 7 Aug 2002 14:41:26 +0200)
From: Stefan Sicurella
Hi,

nochmal eine Socket Frage.
kann ich beeinflussen wie die Zeichen im socket control buffer decoded
werden ?

Im Moment werden empfangene Umlaute als sonderbare Zeichen dargestellt
anstatt im üblichen html code,
bzw richtig decoded wären es ja wieder Umlaute...


Gruß

Stefan

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 14:30 (Wed, 07 Aug 2002 15:30:43 +0200)
From: Stephan Huber


--On Mittwoch, 7. August 2002 14:41 Uhr +0200 Stefan Sicurella
<<email address removed>> wrote:

> Im Moment werden empfangene Umlaute als sonderbare Zeichen dargestellt
> anstatt im üblichen html code, bzw richtig decoded wären es ja wieder
> Umlaute...

was raus geht, kommt auch so rein. Dein Socket empfängt keine Zeichen
sonder bytes. Wie diese Bytes interpretiert werden sollen, hängt vom
verwendeten Protokoll und noch anderen Faktoren ab. Ein Protokoll ist ja
nichts anderes als eine Beschreibung des Datenflusses und wie er zu
interpretieren ist.

Wenn du z.b eine Serveranwendung hast, von der sich eine client-anwendung
irgendwelche strings holt, aber die Information, in welchem Encoding die
Strings vorliegen, nicht mitübermittelt wird, dann hat der client ein
Problem, aus den empfangenen Bytes wieder einen sinnvollen String zu
basteln. Oder das Protokoll schreibt zwingend ein encoding vor, dann muß
der Server aber auch dafür sorge tragen, dass der gelieferte Datenstrom
auch den selbstgesetzten Regeln entspricht.

Andererseits wenn du z.b. html-Seiten empfängst, steht ja im <HEAD>-Teil
der Seite das verwendete encoding und das ist dann für alle bytes>128
anzuwenden.

Um Dir weiterhelfen zu können, mußt du noch etwas expliziter beschreiben,
woher die Zeichen kommen, und v.a. welches Protokoll verwendet wird.

Stephan

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 14:44 (Wed, 7 Aug 2002 15:44:23 +0200)
From: Stefan Sicurella

Am Mittwoch, 07.08.02 um 15:30 Uhr schrieb Stephan Huber:

> Andererseits wenn du z.b. html-Seiten empfängst, steht ja im
> <HEAD>-Teil der Seite das verwendete encoding und das ist dann für
> alle bytes>128 anzuwenden.
>
> Um Dir weiterhelfen zu können, mußt du noch etwas expliziter
> beschreiben, woher die Zeichen kommen, und v.a. welches Protokoll
> verwendet wird.
>
> Stephan
>

Hi,

also die Daten die ich empfange sehen so aus:

HTTP/1.1 200 OK
Date: Wed, 07 Aug 2002 13:40:06 GMT
Server: Apache/1.3.20 (Linux/SuSE) PHP/4.0.6
X-Powered-By: PHP/4.0.6
Connection: close
Content-Type: text/html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

jetzt folgen die Daten....und Umlaute sehen zB so aus:

¸bertragen

Anfordern tue ich so:

x="http://www........"
socket1.address = "www......"
window1.socket1.port = 80
window1.socket1.connect
socket1.write "GET " + x + " HTTP/1.0" + chr(13) + chr(10) +
chr(13) + chr(10)

kannst du daraus etwas ableiten ?

Gruß

Stefan

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 14:58 (Wed, 07 Aug 2002 15:58:10 +0200)
From: Robert Lach

Hier Stefan,
das Zauberwort heißt 'Textencoding Klasse' :-)
versuchs mal zum Einstieg mit dieser kleinen Funktion.

Gruß,
Rob



<schnippppp>

Function DecodeMyText(inData as string) As string
Dim c as TextConverter
dim Data,tmp as string

Data = inData
c=GetTextConverter(GetTextEncoding(&h500), getTextEncoding(0))


while len(Data) > 500
tmp = tmp + c.convert( left(Data,500) )
Data = mid(Data,501)
wend
Data = tmp + c.convert( Data )

return Data

End Function

</schnnaaaapp>



-------------------------------

Robert Lach
email: <email address removed>

Homepage:
http://www.robs-world.de

Children with Down-Syndrom picture gallery:
http://www.robs-world.de/DS-Fotos/

ASK THE WEB
The internet translation dictionary client
http://www.robs-world.de/software/atw/

robs world software:
http://www.robs-world.de/software





Am 07.08.2002 15:44 Uhr schrieb "Stefan Sicurella" unter
<<email address removed>>:

>
> Am Mittwoch, 07.08.02 um 15:30 Uhr schrieb Stephan Huber:
>
>> Andererseits wenn du z.b. html-Seiten empfängst, steht ja im
>> <HEAD>-Teil der Seite das verwendete encoding und das ist dann für
>> alle bytes>128 anzuwenden.
>>
>> Um Dir weiterhelfen zu können, mußt du noch etwas expliziter
>> beschreiben, woher die Zeichen kommen, und v.a. welches Protokoll
>> verwendet wird.
>>
>> Stephan
>>
>
> Hi,
>
> also die Daten die ich empfange sehen so aus:
>
> HTTP/1.1 200 OK
> Date: Wed, 07 Aug 2002 13:40:06 GMT
> Server: Apache/1.3.20 (Linux/SuSE) PHP/4.0.6
> X-Powered-By: PHP/4.0.6
> Connection: close
> Content-Type: text/html
> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
>
>
> jetzt folgen die Daten....und Umlaute sehen zB so aus:
>
> ¸bertragen
>
> Anfordern tue ich so:
>
>
> x="http://www........"
> socket1.address = "www......"
> window1.socket1.port = 80
> window1.socket1.connect
> socket1.write "GET " + x + " HTTP/1.0" + chr(13) + chr(10) +
> chr(13) + chr(10)
>
> kannst du daraus etwas ableiten ?
>
> Gruß
>
> Stefan
>
> - - - - - - - - - -
> For list commands, send "Help" in the body of a message to
> <<email address removed>>

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 15:51 (Wed, 7 Aug 2002 16:51:55 +0200)
From: Stefan Sicurella


> Hier Stefan,
> das Zauberwort heißt 'Textencoding Klasse' :-)
> versuchs mal zum Einstieg mit dieser kleinen Funktion.
>
> Gruß,
> Rob
>
> <schnippppp>
> Function DecodeMyText(inData as string) As string
> Dim c as TextConverter
> dim Data,tmp as string
>
> Data = inData
> c=GetTextConverter(GetTextEncoding(&h500), getTextEncoding(0))
>
> while len(Data) > 500
> tmp = tmp + c.convert( left(Data,500) )
> Data = mid(Data,501)
> wend
> Data = tmp + c.convert( Data )
>
> return Data
>
> End Function
>
> </schnnaaaapp>

Hi,

ja das hilft...und funktioniert auch.

nur was mache ich jetzt noch mit den empfangenen <br> usw. ??

Gruß

Stefan

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 16:31 (Wed, 07 Aug 2002 17:31:07 +0200)
From: Robert Lach


Die restlichen HTML Befehle die du unterstützen willst mußt du selber
einbauen :-) Ich hab aber auch schon ein paar freie Klassen gesehen die
einige Grundbefehle unterstützen.

Aber wenn's dir nur um das <br> geht...ganz simple, erweitere die Funktion
vor dem 'return Data' um diese Zeile:

data = replaceall( Data, "<br>",chr(13) )

Gruß,
Rob


Am 07.08.2002 16:51 Uhr schrieb "Stefan Sicurella" unter
<<email address removed>>:

>
>
>> Hier Stefan,
>> das Zauberwort heißt 'Textencoding Klasse' :-)
>> versuchs mal zum Einstieg mit dieser kleinen Funktion.
>>
>> Gruß,
>> Rob
>>
>>
>>
>>
>> <schnippppp>
>>
>>
>> Function DecodeMyText(inData as string) As string
>> Dim c as TextConverter
>> dim Data,tmp as string
>>
>> Data = inData
>> c=GetTextConverter(GetTextEncoding(&h500), getTextEncoding(0))
>>
>>
>> while len(Data) > 500
>> tmp = tmp + c.convert( left(Data,500) )
>> Data = mid(Data,501)
>> wend
>> Data = tmp + c.convert( Data )
>>
>> return Data
>>
>> End Function
>>
>>
>> </schnnaaaapp>
>>
>>
>>
>>
>>
>
> Hi,
>
> ja das hilft...und funktioniert auch.
>
> nur was mache ich jetzt noch mit den empfangenen <br> usw. ??
>
> Gruß
>
> Stefan
>
>
> - - - - - - - - - -
> For list commands, send "Help" in the body of a message to
> <<email address removed>>

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 16:40 (Wed, 7 Aug 2002 17:40:03 +0200)
From: Stefan Sicurella

Am Mittwoch, 07.08.02 um 17:31 Uhr schrieb Robert Lach:

> data = replaceall( Data, "<br>",chr(13) )
>
> Gruß,
> Rob
Rob,

danke, manchmal habe ich Tomaten auf den Augen....
aber seit 4 Tagen bin ich an dem Mist fast ohne Schlaf.....

Gruß

Stefan

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 16:16 (Wed, 7 Aug 2002 17:16:48 +0200)
From: Stefan Sicurella

Am Mittwoch, 07.08.02 um 15:58 Uhr schrieb Robert Lach:

>
> Data = inData
> c=GetTextConverter(GetTextEncoding(&h500), getTextEncoding(0))
>
Hi,

also irgendwie komme ich nicht mit den Syntax klar, wo steht das ?

Auf jeden Fall funktioniert es (-:

Geht das auch in die andere Richtung ?

Gruß

Stefan

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>

Re: Socket Frage
Date: 07.08.02 16:38 (Wed, 07 Aug 2002 17:38:31 +0200)
From: Robert Lach

Schau einfach mal in die RealBasic Hilfe dazu oder noch besser ins RealBasic
Handbuch.

Klar geht das auch umgekehrt, einfach nur die Paramater bei der Encoder
erzeugung vertauschen:

c=GetTextConverter(GetTextEncoding(0), getTextEncoding(&h500))

Gruß,
Rob

Am 07.08.2002 17:16 Uhr schrieb "Stefan Sicurella" unter
<<email address removed>>:

>
> Am Mittwoch, 07.08.02 um 15:58 Uhr schrieb Robert Lach:
>
>>
>> Data = inData
>> c=GetTextConverter(GetTextEncoding(&h500), getTextEncoding(0))
>>
>>
> Hi,
>
> also irgendwie komme ich nicht mit den Syntax klar, wo steht das ?
>
> Auf jeden Fall funktioniert es (-:
>
> Geht das auch in die andere Richtung ?
>
>
> Gruß
>
> Stefan
>
> - - - - - - - - - -
> For list commands, send "Help" in the body of a message to
> <<email address removed>>

- - - - - - - - - -
For list commands, send "Help" in the body of a message to
<<email address removed>>