MarcusW.VncClient icon indicating copy to clipboard operation
MarcusW.VncClient copied to clipboard

Updating the screen

Open v1rk0 opened this issue 3 years ago • 6 comments

Hello, Thank you for the libs. I faced with problem, that VncView doesn't update all view, but update place under the mouse. It appears on start with automatic connection and switching tabs in tabview. Looks like I do something wrong. Could you explain how avoid this? image

v1rk0 avatar Feb 23 '22 20:02 v1rk0

Hi,

this looks like an issue with automatic server-side framebuffer updates ("Continuous updates").

With which VNC Server have you seen this behaviour? Can you please send a full screenshot of the sample application including information about whether continuous updates are enabled and what encoding types are supported by the server?

Also please provide the client logs, you can see them in the IDE Trace log when running a "Debug" build of the sample app.

MarcusWichelmann avatar Feb 24 '22 12:02 MarcusWichelmann

Hi, I faced with this issue with different VNC servers(TightVNC, RealVNC and etc.) with different versions. Currently it is RealVNC Server 6.7.2. ContiniousUpdate has status false(in client) I created my view with tabs and connection control and faced with this, then i tried to use your example and faced with the same. It looks like RFB client draw picture in buffer and when i bind it doesnt redraw it, but redraw only pieces with changes.

[Layout] Started layout pass. To measure: '0' To arrange: '0' (LayoutManager #35619075) [Layout] Layout pass finished in '00:00:00.0175407' (LayoutManager #35619075) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Doing protocol handshake... (AvaloniaLogger #11429296) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Reading protocol version... (AvaloniaLogger #11429296) "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.22\System.Threading.ThreadPool.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Unknown protocol version RFB 005.000. (AvaloniaLogger #11429296) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Supported server protocol version is unknown, too new? Trying latest protocol version RFB 3.8. (AvaloniaLogger #11429296) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Sending protocol version RFB 3.8... (AvaloniaLogger #11429296) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Server supports the following security types: 13, 5, 6, 130, 2, 192 (AvaloniaLogger #11429296) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Informing server about chosen security type: VncAuth(2) (AvaloniaLogger #11429296) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Handshaking.RfbHandshaker: Negotiated security type: VncAuth(2). Authenticating... (AvaloniaLogger #11429296) "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.22\System.Security.Cryptography.Csp.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.22\System.Security.Cryptography.Primitives.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Initialization.RfbInitializer: Doing protocol initialization... (AvaloniaLogger #31364015) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Initialization.RfbInitializer: Sending shared-flag (True)... (AvaloniaLogger #31364015) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Initialization.RfbInitializer: Reading server init message... (AvaloniaLogger #31364015) "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.22\System.Runtime.Intrinsics.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Initialization.RfbInitializer: Framebuffer size: 800 x 600 (AvaloniaLogger #31364015) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Initialization.RfbInitializer: Pixel format: RFB RGB888, Depth 24 (32bpp), LE, True-Color, R: 255 (>>16), G: 255 (>>8), B: 255 (>>0) (AvaloniaLogger #31364015) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Initialization.RfbInitializer: Desktop name: raspberrypi (AvaloniaLogger #31364015) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Enqueuing initial messages... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Starting receive loop... (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Starting send loop... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.RfbConnection: Connection to vnc://192.168.1.240:5900 established successfully. (AvaloniaLogger #21421675) "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.22\System.Runtime.CompilerServices.Unsafe.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending SetEncodings message (SupportedEncodingTypes: Fence, JPEG Quality Level: 10/10, ContinuousUpdates, JPEG Fine-Grained Quality Level: 100%, ZLib, LastRect, DesktopSize, CopyRect, ExtendedDesktopSize, Raw, ZRLE, JPEG Subsampling Level: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: False, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [Layout] Started layout pass. To measure: '0' To arrange: '0' (LayoutManager #35619075) [Layout] Layout pass finished in '00:00:00.0000092' (LayoutManager #35619075) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 11 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.ProtocolState: Marking encoding type ZRLE as used... (AvaloniaLogger #12674872) "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Program Files\dotnet\shared\Microsoft.NETCore.App\3.1.22\System.IO.Compression.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". [Layout] Started layout pass. To measure: '0' To arrange: '0' (LayoutManager #35619075) [Layout] Layout pass finished in '00:00:00.0000127' (LayoutManager #35619075) "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\Remote Debugger\x64\Runtime\Microsoft.VisualStudio.Debugger.Runtime.NetCoreApp.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". Поток 0x5c64 завершился с кодом 0 (0x0). [Layout] Started layout pass. To measure: '1' To arrange: '1' (LayoutManager #35619075) "AvaloniaVncClient.exe" (CoreCLR: clrhost). Загружено "C:\Users\egorv\source\repos\MarcusW.VncClient\samples\AvaloniaVncClient\bin\Debug\netcoreapp3.1\HarfBuzzSharp.dll". Загрузка символов пропущена. Модуль оптимизирован, включен параметр отладчика "Только мой код". [Layout] Layout pass finished in '00:00:01.5794942' (LayoutManager #35619075) [Layout] Started layout pass. To measure: '2' To arrange: '2' (LayoutManager #35619075) [Layout] Layout pass finished in '00:00:00.0075154' (LayoutManager #35619075) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 11 rectangles in 298501ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 4 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [Layout] Started layout pass. To measure: '1' To arrange: '1' (LayoutManager #35619075) [Layout] Layout pass finished in '00:00:00.0042345' (LayoutManager #35619075) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 4 rectangles in 128ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 0, 598, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 4, 594, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 11, 591, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 21, 586, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 35, 584, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 46, 583, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 56, 584, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 2 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 73, 587, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 89, 591, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 100, 596, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 2 rectangles in 130ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 2 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 2 rectangles in 4ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 1 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 1 rectangles in 8ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 349, 592, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 366, 590, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 387, 584, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 403, 580, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 414, 579, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 423, 576, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 430, 575, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 436, 574, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 2 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 441, 574, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 2 rectangles in 0ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 443, 574, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 445, 574, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 445, 574, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 446, 574, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 447, 574, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 447, 575, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 2 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 2 rectangles in 0ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 447, 575, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 447, 576, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 446, 578, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 444, 583, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 443, 590, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending PointerEvent message (PointerPosition: 441, 597, PressedButtons: None)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 2 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 2 rectangles in 0ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) Поток 0x52fc завершился с кодом 0 (0x0). Поток 0x5bdc завершился с кодом 0 (0x0). Поток 0x5cd4 завершился с кодом 0 (0x0). Поток 0xa08 завершился с кодом 0 (0x0). [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 1 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 1 rectangles in 7ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageReceiver: Received message: FramebufferUpdate(0) (AvaloniaLogger #21943666) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Receiving framebuffer update with 1 rectangles. Current framebuffer size: 800 x 600 (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.MessageTypes.Incoming.FramebufferUpdateMessageType: Received and rendered/processed 1 rectangles in 18ms. Please note that debug builds are way less optimized. (AvaloniaLogger #45653674) [VncClient] MarcusW.VncClient.Protocol.Implementation.Services.Communication.RfbMessageSender: Sending FramebufferUpdateRequest message (Incremental: True, Rectangle: 0, 0, 800 x 600)... (AvaloniaLogger #35236192) Поток 0x27f4 завершился с кодом 0 (0x0).

And currently it is absolutely your example, but connection starts with initialization.

`public MainWindowViewModel(ConnectionManager? connectionManager = null, InteractiveAuthenticationHandler? interactiveAuthenticationHandler = null) {

        _connectionManager = connectionManager ?? Locator.Current.GetService<ConnectionManager>() ?? throw new ArgumentNullException(nameof(connectionManager));
        InteractiveAuthenticationHandler = interactiveAuthenticationHandler ?? Locator.Current.GetService<InteractiveAuthenticationHandler>()
            ?? throw new ArgumentNullException(nameof(interactiveAuthenticationHandler));

        IObservable<bool> parametersValid = this.WhenAnyValue(vm => vm.Host, vm => vm.Port, (host, port) => {
            // Is it an IP Address or a valid DNS/hostname?
            if (Uri.CheckHostName(host) == UriHostNameType.Unknown)
                return false;

            // Is the port valid?
            return port >= 0 && port <= 65535;
        });
        _parametersValidProperty = parametersValid.ToProperty(this, nameof(ParametersValid));

        ConnectCommand = ReactiveCommand.CreateFromTask(ConnectAsync, parametersValid);
        Refresh = ReactiveCommand.CreateFromTask(RefreshCommand, parametersValid);
        ConnectCommand.Execute().Subscribe();
    }`

image

v1rk0 avatar Feb 24 '22 17:02 v1rk0

And if i press "Connect" button - it creates new connection and shows great.

v1rk0 avatar Feb 24 '22 17:02 v1rk0

Hey @v1rk0 , I am currently facing exactly the same issue. Did you ever managed to find a solution for this?

Wildimp avatar Feb 06 '24 16:02 Wildimp

Oh, It was long time ago. I think I changed vnc server(open source) and forced to send full screen update each time. Regarding this client I absolutely don’t remember why I stopped investigation.

v1rk0 avatar Feb 06 '24 18:02 v1rk0

Thanks. I will give this a try

Wildimp avatar Feb 07 '24 09:02 Wildimp