none
SerialPort und VB 2008 RRS feed

  • Frage

  • Ich muß über den ComPort  den Wert chr(130) senden.
    Leider geht das nicht. Ich habe irgendwo gelesen, das nur
    die Zeichen bis chr(127) mit VB 2008 funktionieren.
    Wenn das der Fall ist, welche Möglichkeit gibt es? 
    Muss man zu einem Fremdhersteller ausweichen.
    Das Wäre eine traurige Nachricht, und Microsoft
    sollte schnellstens nachbessern.  
    • Verschoben Kay GizaMicrosoft employee Freitag, 23. Oktober 2009 07:39 (Von:Aus der MSDN Hotline: Häufig gestellte Fragen und deren Antworten)
    Freitag, 23. Oktober 2009 06:31

Antworten

  • Richtig ist, dass die Standard-Codierung von SerialPort eine ASCII-Codierung ist (7 Bytes, Maximalwert 127). Mit der "richtigen" Codierung klappt's auch mit 8-Bit-Werten. Eine Codierung, die da als Single-Byte-Codierung in Frage kommt, ist die westeuropäische ISO-Codierung ("iso-8859-1", Codepage 28591):

    SerialPort1.Encoding = System.Text.Encoding.GetEncoding(28591)

    Um nach diesem Teilerfolg eine mögliche Selbstüberlistung durch die der Chr()-Funktion zu Grunde liegende Codepage zu vermeiden, empfiehlt es sich, statt Chr() die Byte-Array-basierende Überladung von Write zu verwenden.

    Viel Erfolg!
    Mathias
    Freitag, 23. Oktober 2009 11:54

Alle Antworten

  • Richtig ist, dass die Standard-Codierung von SerialPort eine ASCII-Codierung ist (7 Bytes, Maximalwert 127). Mit der "richtigen" Codierung klappt's auch mit 8-Bit-Werten. Eine Codierung, die da als Single-Byte-Codierung in Frage kommt, ist die westeuropäische ISO-Codierung ("iso-8859-1", Codepage 28591):

    SerialPort1.Encoding = System.Text.Encoding.GetEncoding(28591)

    Um nach diesem Teilerfolg eine mögliche Selbstüberlistung durch die der Chr()-Funktion zu Grunde liegende Codepage zu vermeiden, empfiehlt es sich, statt Chr() die Byte-Array-basierende Überladung von Write zu verwenden.

    Viel Erfolg!
    Mathias
    Freitag, 23. Oktober 2009 11:54
  • Hallo WaGr,

    Lies auch die folgenden Artikel durch:

    Serial COM Port Kommunikation mithilfe von Visual Basic .NET à http://www.innovatic.dk/knowledg/SerialCOM/SerialCOM.htm

    SerialPort Encoding à http://blogs.msdn.com/bclteam/archive/2006/05/26/608377.aspx

    Grüße,

    Robert

    Samstag, 24. Oktober 2009 19:28
    Moderator
  • Hallo WaGr,

    Ich gehe davon aus, dass die Antwort Dir weitergeholfen hat.
    Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.

    Grüße,
    Robert

    Freitag, 30. Oktober 2009 17:39
    Moderator