/rdesktop

golang远程桌面库

Primary LanguageGoMIT LicenseMIT

rdesktop

rdesktop Go Reference Go Report Card go-mod license

golang desktop controller library

  • screenshot
  • keyboard/mouse events
  • scroll events
  • clipboard get/set(only supported text data)

supported system

  • linux(x11)
  • windows
  • macos

screenshot

cli, _ := rdesktop.New()
cli.ShowCursor(true) // show the cursor image
img, err := cli.Screenshot()
// use of img

mouse

cli, _ := rdesktop.New()
cli.MouseMove(100, 100) // move mouse to 100,100
cli.ToggleMouse(rdesktop.MouseLeft, true) // mouse left button press down
cli.ToggleMouse(rdesktop.MouseLeft, false) // mouse left button press up
cli.Scroll(0, -100) // scroll down 100 pixel

keyboard

cli, _ := rdesktop.New()
cli.ToggleKey("control", true) // press down ctrl
cli.ToggleKey("a", true) // press down a
cli.ToggleKey("control", false) // press up ctrl
cli.ToggleKey("a", false) // press up a

clipboard

cli, _ := rdesktop.New()
cli.ClipboardSet("hello") // set "hello" text to clipboard
data, _ := cli.ClipboardGet() // get clipboard data

cursor image

cli, _ := rdesktop.New()
img, err := cli.GetCursor()
// use of img