https://github.com/tkmax777/remoterelativeinput
Supports relative input in VNC (RDP) sessions from Windows to Windows / Linux using SSH sessions.
https://github.com/tkmax777/remoterelativeinput
Last synced: about 2 months ago
JSON representation
Supports relative input in VNC (RDP) sessions from Windows to Windows / Linux using SSH sessions.
- Host: GitHub
- URL: https://github.com/tkmax777/remoterelativeinput
- Owner: TKMAX777
- License: gpl-3.0
- Created: 2022-03-05T14:55:27.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-06-27T10:58:44.000Z (11 months ago)
- Last Synced: 2025-03-24T17:01:57.113Z (2 months ago)
- Language: Go
- Homepage:
- Size: 146 KB
- Stars: 25
- Watchers: 1
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# RemoteRelativeInput
## About This Program
This program is designed to allow relative input in an RDP (VNC) session by wrapping an existing remote desktop client window with another window and sending the client's input information using an SSH session. Currently, only sessions from a Windows machine to a Windows or Linux machine are supported.

## News
If you are going to use this for connecting from Windows to Windows via RDP (RemoteDesktop), RDPRelativeInput is available!
This program is easier to install and use.Check:
[github.com/TKMAX777/RDPRelativeInput](https://github.com/TKMAX777/RDPRelativeInput)## install
### Server
#### Debian / Ubuntu
```sh
sudo apt install xdotool golang-go
go install github.com/TKMAX777/RemoteRelativeInput/cmd/RelativeInputServer@latest
```#### Windows
1. The [Go](https://go.dev/doc/install) and [OpenSSH Server](https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse) must be installed before installation.
2. Run the following commands on CMD.```cmd
go install github.com/TKMAX777/RemoteRelativeInput/cmd/RelativeInputServer@latest
go install github.com/TKMAX777/RemoteRelativeInput/cmd/RelativeInputTransferer@latest
```### Client
1. The [Go](https://go.dev/doc/install) and [OpenSSH Client](https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse) must be installed before installation.
2. Run the following commands on CMD.```sh
go install github.com/TKMAX777/RemoteRelativeInput/cmd/RelativeInputClient@latest
```## Usage
### Connect to Windows
**Hint**
If you are willing to connect to windows host from windows client via RDP(RemoteDesktop), you can use this:
[github.com/TKMAX777/RDPRelativeInput](https://github.com/TKMAX777/RDPRelativeInput)
However, if you are trying to connect from Windows (ARM64) or you are using VNC protocol, still you have to use this program.
These are the usage:
1. Open Remote Desktop Connection (or VNC client) and connect to your server like usual.
2. Open cmd and start the server program on the host machine.```
start /d "C:\Users\\go\bin" RelativeInputServer.exe
```☆ replace <HostFolderName> with the name of the folder of your account located in `C:\Users`
3. Starts a SSH session from the client machine on cmd.
```
set CLIENT_NAME=
RelativeInputClient.exe | ssh @ "C:\Users\\go\bin\RelativeInputTransferer.exe"
```☆ replace "<CLIENT_NAME> with the title of your VNC or RDP client window
☆ You can make it empty if you cannot find it. In this time, window selecter will appear.
☆ replace <HostAddress> with the IP of your host
☆ replace <HostFolderName> with the name of the folder of your account located in C:\Users
☆ replace <HostUsername> with the Host username
☆ It is reported that it does not work properly in PowerShell.4. Ignore the message box and click on cmd tab, and enter host user password
5. Press Yes in the message box displayed on the host machine.
6. Press OK in the message box displayed on the client machine.
7. Enjoy!☆ If you need client cursor, use the F8 key to switch to absolute input.
☆ To return to relative input mode, select the RDP Input Wrapper window and hit the F8 key again.
☆ To close this app, hold the F12 key.
☆ Administrator privileges are required for operation in some games. In that case, please run RelativeInputServer.exe with Administrator privileges.
☆ If you are using a keyboard setting other than the US keyboard setting, the response speed may be significantly reduced due to the IME.
In this case, please add the US keyboard from the Windows settings.
`Settings -> Time and Language -> Add Language -> English (US) -> Language Options -> Add Keyboard
`### Connect to Debian / Ubuntu
```sh
set CLIENT_NAME= - Remote Desktop Connection
RelativeInputClient.exe | ssh /home//go/bin/RelativeInputServer
```☆ The mouse cursor disappears during relative input mode. If you need the cursor, use the F8 key to switch to absolute input.
☆ To return to relative input mode, select the RDP Input Wrapper window and hit the F8 key again.
☆ replace <HostFolderName> with the name of the folder of your account located in `C:\Users`## Why does this program use Graphics Capture API?
This program uses Graphics Capture API on the windows host computer.
In a remote desktop connection, the cursor on the host side is normally not displayed. However, the GraphicsCaptureAPI allows the cursor to be displayed, so this program creates a button which can turn this feature on and off and captures that window.
## Copyright
Copyright 2022- tkmax777 and contributors