Änderungen

VNC Server Protokoll verstehen

1.059 Byte hinzugefügt, 18:08, 19. Nov. 2023
=== Fernsteuerung ===
Am Ende davon geht das Protokoll in den Fernsteuerungsmodus über - hier ist die Situation anders:Es gibt nun kein festes Handshake mehr, stattdessen werden verschiedene Nachrichtentypen unabhängig voneinander übertragen. So kann z.B. der Client in freier Folge Nachrichten senden, wenn er Bildschirmupdates haben möchte oder wenn er Tastatur- oder Mausereignisse hat. Der Server sendet im wesentlichen Nachrichten vom Typ FramebufferUpdate und updatet damit die Bildschirmdarstellung auf dem Client. Im Fernsteuerungsmodus sind die Nachrichten über das erste Byte, das Type-Byte kodiert. Es gibt allerdings keine direkte Info, wie lang ein Paket ist. Damit der Server die Nachrichten auseinander nehmen kann, muss er auch für die einfachste Implementierung zumindest die folgenden Nachrichtentypen soweit parsen können, dass er die Längen richtig einliest: {| class="wikitable" |-! Nummer! Name|-| 0| SetPixelFormat (19 Byte Länge)|-| 2| SetEncodings (variable Länge)|-| 3| FramebufferUpdateRequest (10 Byte Länge)|-| 4| KeyEvent (8 Byte Länge)|-| 5| PointerEvent (6 Byte Länge)|-| 6| ClientCutEvent (variable Länge)|}
2.008
Bearbeitungen