21pages
ec042434be
use sihost.exe as fallback for run_as_user if no explorer.exe ( #8305 )
...
* There is no relevant information, but I found that each session has a unique sihost.exe, and the user name of the process is consistent with the user name of the session, and after using the task manager to kill this process, it will automatically restart. Checking sessionUserName=siHost UserName may be unnecessary, but since there is no evidence, check it anyway.
* GetFallbackUserPid is called only when explorer.exe does not exist.
* ProcessHacker shows that the tokens of explorer.exe and sihost.exe are the same, I know little about it.
Signed-off-by: 21pages <pages21@163.com>
2024-06-10 20:29:53 +08:00
21pages
ffac670f95
fix nt_terminate_process missing CloseHandle ( #8294 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-06-08 21:15:01 +08:00
21pages
fd0f85d565
no explorer.exe, judge by pid retrived from cpp ( #8291 )
...
Signed-off-by: 21pages <sunboeasy@gmail.com>
2024-06-08 16:50:35 +08:00
21pages
8de5f3f0d3
not close connection if failed to start cm due to no explorer.exe ( #8290 )
...
Signed-off-by: 21pages <sunboeasy@gmail.com>
2024-06-08 16:11:51 +08:00
21pages
0bb537b872
fix kill occupied ipc process, find with enumerate, kill with NtTerminateProcess ( #8289 )
...
* I reproduced the issue, that process did't have title, couldn't be connected
to and taskkill not work
* Test whether ipc is opccupied with enumerating named pipe
* With NtTerminateProcess, it was killed successfully.
* There is a way to find the exact process which occupy the ipc, I have
not check it, it's from https://github.com/winsiderss/systeminformer
Signed-off-by: 21pages <sunboeasy@gmail.com>
2024-06-08 14:09:16 +08:00
21pages
18464ec570
windows replace uni with cmd to start up main window after installation ( #8235 )
...
This is to avoid uni link not working
Other change: The install window now has the title "appname - Install" to distinguish it from the main application window.
Signed-off-by: 21pages <pages21@163.com>
2024-06-01 20:28:21 +08:00
21pages
d3eaa6600d
fix, windows try kill flutter main window process only when --server's ipc is ( #8086 )
...
occupied
Signed-off-by: 21pages <pages21@163.com>
2024-05-18 23:14:42 +08:00
21pages
c2b7810c33
windows kill flutter main window when --server close ( #8077 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-05-18 08:24:28 +08:00
Sahil Yeole
3811f41076
Feat: Follow remote cursor and window focus | Auto display switch ( #7717 )
...
* feat: auto switch display on follow remote cursor
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* feat: auto switch display on follow remote window focus
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build and remove unused imports
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix linux get_focused_window_id
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* lock show remote cursor when follow remote cursor is enabled
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix config
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* prevent auto display switch on show all display and displays as individual windows
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix options
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix options
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove unused function
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove unwraps and improve iterations
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* set updateCursorPos to false to avoid interrupting remote cursor
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* update lang
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix web build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* update checks for options and enable in view mode
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use focused display index for window focus service
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use window center for windows display focused
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove unused imports
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use libxdo instead of xdotool
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix multi monitor check
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* enable show cursor when follow cursor is default
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove show_all_displays,use runtime state instead
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix show cursor lock state on default
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove view mode with follow options
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use separate message for follow current display
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix options
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* sciter support for follow remote cursor and window
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* add check for ui session handlers count
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use cached displays and remove peer info write
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* No follow options when show all displays
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* No follow options when multi ui session
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* turn off follow options when not used|prevent msgs
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use window center for switch in linux
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use subbed display count to prevent switch msgs
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix web build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* move subbed displays count
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* add noperms for window focus
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* add subscribe for window focus
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove window_focus message and unsub on multi ui
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* add multi ui session field
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
---------
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
Co-authored-by: RustDesk <71636191+rustdesk@users.noreply.github.com>
2024-04-25 13:26:02 +08:00
fufesou
b407893db5
refact: win idd, x86 on x64 ( #7796 )
...
* refact: win idd, x86 on x64
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* comments
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* typo
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* refact: win idd, check if x64 and deviceinstaller64 exits
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* refact: win idd
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* refact: win idd, add logs
Signed-off-by: fufesou <shuanglongchen@yeah.net>
---------
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2024-04-23 17:00:41 +08:00
fufesou
4f47d4482b
refact: win, idd control ( #7789 )
...
* refact: win, idd control
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* refact: win device control, better addr of
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* refact: simple refact
Signed-off-by: fufesou <shuanglongchen@yeah.net>
---------
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2024-04-22 10:37:08 +08:00
fufesou
ad062486ff
Fix/win query arch ( #7786 )
...
* fix: win, query arch with GetNativeSystemInfo
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* refact: idd, ci
Signed-off-by: fufesou <shuanglongchen@yeah.net>
---------
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2024-04-21 14:55:42 +08:00
rustdesk
0365c94407
remove IsWow64Process2
2024-04-20 19:24:44 +08:00
fufesou
e83c28bf54
refact: win, virtual display ( #7767 )
...
* refact: win, virtual display
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* Update flutter-build.yml
---------
Signed-off-by: fufesou <shuanglongchen@yeah.net>
Co-authored-by: RustDesk <71636191+rustdesk@users.noreply.github.com>
2024-04-19 11:31:52 +08:00
writegr
9b2ec62be9
chore: fix some typos in comments ( #7752 )
...
Signed-off-by: writegr <wellweek@outlook.com>
2024-04-18 14:39:38 +08:00
fufesou
64020758d9
Feat. Msi ( #7684 )
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2024-04-11 11:51:35 +08:00
rustdesk
cf8386aa50
remove useless code in is_installed windows
2024-04-09 16:33:03 +08:00
rustdesk
22da14e3f7
fix https://github.com/rustdesk/rustdesk/discussions/7628 , https://github.com/rustdesk/rustdesk/discussions/7490
2024-04-07 11:31:51 +08:00
fufesou
ab07eb6f4a
Fix. Remove strange cert dir created by 1.2.3 ( #7620 )
...
* Fix. Remove strange cert dir created by 1.2.3
1. Remove `install_cert()`.
2. https://github.com/rustdesk/rustdesk/discussions/6444#discussioncomment-9017532
Signed-off-by: fufesou <shuanglongchen@yeah.net>
* comments
Signed-off-by: fufesou <shuanglongchen@yeah.net>
---------
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2024-04-06 16:22:59 +08:00
rustdesk
85f387bfb9
improve https://github.com/rustdesk/rustdesk/discussions/5631#discussioncomment-8916273
2024-03-27 00:38:13 +08:00
rustdesk
fc875f7ad6
more on custom client
2024-03-12 21:47:29 +08:00
21pages
dd44bb2a0c
flutter windows main.cpp get app name from rust ( #7316 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-03-06 17:57:05 +08:00
21pages
1d9b1781d4
update runas to 1.2.0 ( #7271 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-02-27 15:42:35 +08:00
rustdesk
6720bb9f6b
fix ci
2024-02-26 19:01:42 +08:00
21pages
2920e33d71
fix is_physical_console_session ( #7266 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-02-26 13:34:26 +08:00
21pages
1bc11a207a
fix rdp session ctrl+alt+delete ( #7258 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-02-26 13:22:21 +08:00
rustdesk
f1373234dd
remove useless is_rdp_service_open
2024-02-25 20:10:36 +08:00
rustdesk
a28c9f8f36
remove more "rustdesk" built-in
2024-02-25 13:29:06 +08:00
21pages
d723c10a3b
add space after ":" ( #7187 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-02-19 11:06:01 +08:00
21pages
bf5abdb520
refactor windows specific session, file transfer and waiting for image ( #7184 )
...
* refactor windows specific session, file transfer and waiting for image
1. File transfer doesn't show directory until correct session id is ensured
2. Fix file transfer, caused by `pi.username = self.lc.read().unwrap().get_username(&pi);` in `handle_peer_info` override empty username and `get_active_username` doesn't return currect session username
* Fix home directory not change when session changed, or wrong home directory
* Fix show empty remote directory rather than error messagbox when current session is in login screen
3. Show `Connected, waiting for image` after user choose the same
session id
Signed-off-by: 21pages <pages21@163.com>
* update translations
Signed-off-by: 21pages <pages21@163.com>
* Update connection.rs
---------
Signed-off-by: 21pages <pages21@163.com>
Co-authored-by: RustDesk <71636191+rustdesk@users.noreply.github.com>
2024-02-19 10:32:13 +08:00
21pages
0f44de7dc3
refactor windows specific session ( #7170 )
...
1. Modify the process to have the control side lead the session switching: After the control side sends a `LoginRequest`, the controlled side will add all session information and the current session ID in the `LoginResponse`. Upon receiving the `LoginResponse`, the control side will check if the current session ID matches the ID in the `LoginConfigHandler`. If they match, the control side will send the current session ID. If they don't match, a session selection dialog will pop up, the selected session id will be sent. Upon receiving this message, the controlled side will restart if different or sub service if same .
2. Always show physical console session on the top
3. Show running session and distinguish sessions with the same name
4. Not sub service until correct session id is ensured
5. Fix switch sides not work for multisession session
6. Remove all session string join/split except get_available_sessions in
windows.rs
7. Fix prelogin, when share rdp is enabled and there is a rdp session,
the console is in login screen, get_active_username will be the rdp's
username and prelogin will be false, cm can't be created an that
causes disconnection in a loop
8. Rename all user session to windows session
Known issue:
1. Use current process session id for `run_as_user`, sahil says it can
be wrong but I didn't reproduce.
2. Have not change tray process to current session
3. File transfer doesn't update home directory when session changed
4. When it's in login screen, remote file directory is empty, because cm
have not start up
Signed-off-by: 21pages <pages21@163.com>
2024-02-18 22:08:25 +08:00
Sahil Yeole
4bf3764b5d
Feat: Windows connect to a specific user session ( #6825 )
...
* feat windows connect to specific user session
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix import
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix multiple user session fields
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix build
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix file transfer
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix text color on light theme
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* feat windows connect to specific user session code changes and sciter support
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* update texts
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix sciter selected user session
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* add translations
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* Use Y,N options
* feat windows specific user code changes
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* Update dialog.dart
* Update connection.rs
* Update connection.rs
* feat windows specific user code changes
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix sciter
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use lr.union
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove unused peer options
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* select user only when authorised and no existing connection
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* check for multiple users only once
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* optimise and add check for client version
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* use misc option message
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* update rdp user session proto
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix show cm on user session
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* Update pl.rs
* update on_message
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix cm
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* remove user_session_id
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix cm
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
* fix multiple connections
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
---------
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
2024-02-14 23:59:17 +08:00
21pages
2b4a72897e
Specify cmd.exe explicitly to avoid the replacement of cmd commands ( #6818 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-01-06 20:56:40 +08:00
21pages
cdc31b7fc7
Execute the .bat file directly on install to avoid the replacement of cmd ( #6817 )
...
Signed-off-by: 21pages <pages21@163.com>
2024-01-06 20:28:46 +08:00
21pages
50b81c2356
fix windows wakelock, add set_display ( #6623 )
...
Signed-off-by: 21pages <pages21@163.com>
2023-12-05 21:32:44 +08:00
fufesou
bb7300a055
Remove cert file arg on installing cert
...
Signed-off-by: fufesou <shuanglongchen@yeah.ne>
2023-11-26 14:26:45 +08:00
fufesou
97108e788f
Fix. Install cert silent
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-26 12:17:05 +08:00
fufesou
83dbf88ffb
feat, win10, virtual display, not support message
...
Signed-off-by: fufesou <shuanglongchen@yeah.ne>
2023-11-20 21:44:25 +08:00
fufesou
3e8c5d3b79
trivial changes
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:42:34 +08:00
fufesou
2aaca0c54a
Remove get_error() in windows.rs
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:38:53 +08:00
fufesou
c6d587f0c7
Refact, use std::io::Error::from_raw_os_error() to format message
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:22:14 +08:00
fufesou
c85682de8d
Refact, replace GetLastError() by std::io::Error::last_os_error()
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 17:15:15 +08:00
fufesou
7c98bfd363
check if WDA_EXCLUDEFROMCAPTURE is supported
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 07:41:06 +08:00
fufesou
c23f377039
feat, topmost window, exclude from capture
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-20 07:41:04 +08:00
21pages
f9ee0189f0
format log, add space after colon
...
Signed-off-by: 21pages <pages21@163.com>
2023-11-18 09:52:46 +08:00
fufesou
90ac8b7b0b
feat/virtual_display_privacy_mode
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-14 12:11:38 +08:00
fufesou
895831f46f
fix, run check_update_broker_process on privacy mode start
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-11-10 09:56:25 +08:00
fufesou
725a44abd8
feat, win virtual display
...
Signed-off-by: fufesou <shuanglongchen@yeah.net>
2023-10-27 20:12:33 +08:00
dignow
f438176544
fix potential crash when uninstalling cert
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-10-24 11:41:01 +08:00
dignow
be8e8a0521
fix, win, install cert
...
Signed-off-by: dignow <linlong1265@gmail.com>
2023-10-24 10:51:01 +08:00