Skip to content

Unknown capabilities #11

@atroche

Description

@atroche

Hello! I get these errors when I try to connect to my Windows 10 machine:

GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapstypeShare" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapstypeColorcache" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapsettypeLargePointer" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapstypeFont" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapsettypeBitmapCodecs" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapstypeBitmapcacheHostsupport" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapstypeRail" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapstypeWindow" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapsettypeSurfaceCommands" })
GLOBAL: RdpError(RdpError { kind: Unknown, message: "CAPABILITY: Unknown capability CapssettypeFrameAcknowledge" })

using this code drawn from the examples in the README:

use std::net::{SocketAddr, TcpStream};
use rdp::core::client::Connector;
use rdp::core::event::{RdpEvent, PointerEvent, PointerButton};

fn main() {
    let addr = "<MY_IP>:3389".parse::<SocketAddr>().unwrap();
    let tcp = TcpStream::connect(&addr).unwrap();

    let mut connector = Connector::new()
        .screen(800, 600)
        .credentials("".to_string(), "Alistair".to_string(), "<MY_PASSWORD>".to_string());
    let mut client = connector.connect(tcp).unwrap();

    client.write(RdpEvent::Pointer(
        // Send a mouse click down at 100x100
        PointerEvent {
            x: 100 as u16,
            y: 100 as u16,
            button: PointerButton::Left,
            down: true
        }
    )).unwrap();

    client.read(|rdp_event| {
        match rdp_event {
            RdpEvent::Bitmap(bitmap) => {
                dbg!(bitmap.width);
            }
            _ => println!("Unhandled event")
        }
    }).unwrap();
}

Any ideas? Cheers!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions