diff --git a/src/platform/windows.rs b/src/platform/windows.rs index ac358092f..c4fdaf66d 100644 --- a/src/platform/windows.rs +++ b/src/platform/windows.rs @@ -634,19 +634,20 @@ fn get_error() -> String { } pub fn get_active_username() -> String { + use std::os::windows::process::CommandExt; let name = crate::username(); if name != "SYSTEM" { return name; } - if let Ok(output) = std::process::Command::new("query").arg("user").output() { + const CREATE_NO_WINDOW: u32 = 0x08000000; + let mut cmd = std::process::Command::new("query"); + cmd.arg("user"); + cmd.creation_flags(CREATE_NO_WINDOW); + if let Ok(output) = cmd.output() { for line in String::from_utf8_lossy(&output.stdout).lines() { - if line.contains("Active") { - if let Some(name) = line.split_whitespace().next() { - if name.starts_with(">") { - return name.replace(">", ""); - } else { - return name.to_string(); - } + if let Some(name) = line.split_whitespace().next() { + if name.starts_with(">") { + return name.replace(">", ""); } } } diff --git a/src/ui/remote.rs b/src/ui/remote.rs index b97a37650..61a692ff0 100644 --- a/src/ui/remote.rs +++ b/src/ui/remote.rs @@ -1582,7 +1582,7 @@ impl Interface for Handler { pi_sciter.set_item("sas_enabled", pi.sas_enabled); if self.is_file_transfer() { if pi.username.is_empty() { - self.on_error("No active console user logged on, please connect and logon first."); + self.on_error("No active user logged on, please connect and logon first."); return; } } else if !self.is_port_forward() {