remove IsWow64Process2
This commit is contained in:
parent
c81c4f9114
commit
0365c94407
@ -698,19 +698,4 @@ extern "C"
|
|||||||
|
|
||||||
return isRunning;
|
return isRunning;
|
||||||
}
|
}
|
||||||
} // end of extern "C"
|
} // end of extern "C"
|
||||||
|
|
||||||
extern "C"
|
|
||||||
{
|
|
||||||
int get_native_machine()
|
|
||||||
{
|
|
||||||
USHORT processMachine = 0;
|
|
||||||
USHORT nativeMachine = 0;
|
|
||||||
BOOL res = IsWow64Process2(GetCurrentProcess(), &processMachine, &nativeMachine);
|
|
||||||
if (res == TRUE) {
|
|
||||||
return (int)nativeMachine;
|
|
||||||
} else {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -460,7 +460,6 @@ extern "C" {
|
|||||||
fn is_win_down() -> BOOL;
|
fn is_win_down() -> BOOL;
|
||||||
fn is_local_system() -> BOOL;
|
fn is_local_system() -> BOOL;
|
||||||
fn alloc_console_and_redirect();
|
fn alloc_console_and_redirect();
|
||||||
fn get_native_machine() -> i32;
|
|
||||||
fn is_service_running_w(svc_name: *const u16) -> bool;
|
fn is_service_running_w(svc_name: *const u16) -> bool;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2370,55 +2369,16 @@ impl Drop for WallPaperRemover {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// See winnt.h for more information.
|
|
||||||
#[derive(Clone, Copy)]
|
|
||||||
pub enum MachineArch {
|
|
||||||
Unknown = 0,
|
|
||||||
I386 = 0x014c,
|
|
||||||
ARM = 0x01c0,
|
|
||||||
AMD64 = 0x8664,
|
|
||||||
ARM64 = 0xAA64,
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn get_machine_arch() -> Result<MachineArch, io::Error> {
|
|
||||||
let native_machine = unsafe { get_native_machine() };
|
|
||||||
if native_machine != -1 {
|
|
||||||
let native_machine = native_machine as u16;
|
|
||||||
let check_types = [
|
|
||||||
MachineArch::I386,
|
|
||||||
MachineArch::AMD64,
|
|
||||||
MachineArch::ARM,
|
|
||||||
MachineArch::ARM64,
|
|
||||||
];
|
|
||||||
for check_type in check_types.iter() {
|
|
||||||
if *check_type as u16 == native_machine {
|
|
||||||
return Ok(*check_type);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Ok(MachineArch::Unknown)
|
|
||||||
} else {
|
|
||||||
Err(io::Error::last_os_error())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn get_amyuni_exe_name() -> Option<String> {
|
pub fn get_amyuni_exe_name() -> Option<String> {
|
||||||
match get_machine_arch() {
|
let exe = match std::env::consts::ARCH {
|
||||||
Ok(arch) => {
|
"x86" => "deviceinstaller.exe",
|
||||||
let exe = match arch {
|
"x86_64" => "deviceinstaller64.exe",
|
||||||
MachineArch::I386 => "deviceinstaller.exe",
|
_ => {
|
||||||
MachineArch::AMD64 => "deviceinstaller64.exe",
|
log::error!("Unsupported machine architecture");
|
||||||
_ => {
|
return None;
|
||||||
log::error!("Unsupported machine architecture");
|
|
||||||
return None;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
Some(exe.to_string())
|
|
||||||
}
|
}
|
||||||
Err(e) => {
|
};
|
||||||
log::warn!("Failed to get machine architecture: {}", e);
|
Some(exe.to_string())
|
||||||
None
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_uninstall_amyuni_idd(path: &str) -> String {
|
fn get_uninstall_amyuni_idd(path: &str) -> String {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user