remove system requirement, and remove dialgo

This commit is contained in:
rustdesk 2023-07-31 21:57:37 +08:00
parent 63ac61d920
commit 4c32bea702

View File

@ -101,7 +101,6 @@ pub fn core_main() -> Option<Vec<String>> {
args.clear();
}
if args.len() > 0 && args[0] == "--version" {
// not use my_println here, because check super use using this command, no dialog expected
println!("{}", crate::VERSION);
return None;
}
@ -249,49 +248,41 @@ pub fn core_main() -> Option<Vec<String>> {
return None;
} else if args[0] == "--password" {
if args.len() == 2 {
if crate::platform::is_installed()
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
if crate::platform::is_installed() && is_root() {
if let Err(err) = crate::ipc::set_permanent_password(args[1].to_owned()) {
my_println!("{err}");
println!("{err}");
} else {
my_println!("Done!");
println!("Done!");
}
} else {
my_println!("Installation and administrative privileges required!");
println!("Installation and administrative privileges required!");
}
}
return None;
} else if args[0] == "--get-id" {
if crate::platform::is_installed()
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
my_println!("{}", crate::ipc::get_id());
if crate::platform::is_installed() && is_root() {
println!("{}", crate::ipc::get_id());
} else {
my_println!("Installation and administrative privileges required!");
println!("Installation and administrative privileges required!");
}
return None;
} else if args[0] == "--set-id" {
if args.len() == 2 {
if crate::platform::is_installed()
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
if crate::platform::is_installed() && is_root() {
let old_id = crate::ipc::get_id();
let mut res = crate::ui_interface::change_id_shared(args[1].to_owned(), old_id);
if res.is_empty() {
res = "Done!".to_owned();
}
my_println!("{}", res);
println!("{}", res);
} else {
my_println!("Installation and administrative privileges required!");
println!("Installation and administrative privileges required!");
}
}
return None;
} else if args[0] == "--config" {
if args.len() == 2 && !args[0].contains("host=") {
if crate::platform::is_installed()
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
if crate::platform::is_installed() && is_root() {
// encrypted string used in renaming exe.
let name = if args[1].ends_with(".exe") {
args[1].to_owned()
@ -309,22 +300,20 @@ pub fn core_main() -> Option<Vec<String>> {
}
}
} else {
my_println!("Installation and administrative privileges required!");
println!("Installation and administrative privileges required!");
}
}
return None;
} else if args[0] == "--option" {
if crate::platform::is_installed()
&& crate::platform::check_super_user_permission().unwrap_or_default()
{
if crate::platform::is_installed() && is_root() {
if args.len() == 2 {
let options = crate::ipc::get_options();
my_println!("{}", options.get(&args[1]).unwrap_or(&"".to_owned()));
println!("{}", options.get(&args[1]).unwrap_or(&"".to_owned()));
} else if args.len() == 3 {
crate::ipc::set_option(&args[1], &args[2]);
}
} else {
my_println!("Installation and administrative privileges required!");
println!("Installation and administrative privileges required!");
}
return None;
} else if args[0] == "--check-hwcodec-config" {
@ -499,3 +488,14 @@ fn try_send_by_dbus(uni_links: String) -> Option<Vec<String>> {
}
}
}
#[cfg(not(any(target_os = "android", target_os = "ios")))]
fn is_root() -> bool {
#[cfg(windows)]
{
return crate::platform::is_elevated(None).unwrap_or_default()
|| crate::platform::is_root();
}
#[allow(unreachable_code)]
crate::platform::is_root()
}