From a9495f1d309277fd745a4648b17bd859678e4616 Mon Sep 17 00:00:00 2001 From: lubeilin <1791778603@qq.com> Date: Fri, 6 Oct 2023 22:44:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=87=E7=BA=A7tap=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vnt/win-tun-tap/Cargo.toml | 5 ++++- vnt/win-tun-tap/src/tap/iface.rs | 10 +++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/vnt/win-tun-tap/Cargo.toml b/vnt/win-tun-tap/Cargo.toml index ae4edc0..fbed85c 100644 --- a/vnt/win-tun-tap/Cargo.toml +++ b/vnt/win-tun-tap/Cargo.toml @@ -30,5 +30,8 @@ features = [ "ipexport", "iphlpapi", "handleapi", - "ifdef" + "ifdef", + "minwinbase", + "basetsd", + "impl-default" ] \ No newline at end of file diff --git a/vnt/win-tun-tap/src/tap/iface.rs b/vnt/win-tun-tap/src/tap/iface.rs index d022260..201a366 100644 --- a/vnt/win-tun-tap/src/tap/iface.rs +++ b/vnt/win-tun-tap/src/tap/iface.rs @@ -119,14 +119,14 @@ pub fn create_interface() -> io::Result { KEY_QUERY_VALUE | KEY_NOTIFY, )?; - let key = RegKey::predef(key); + let key = RegKey::predef(key as _); while let Err(_) = key.get_value::("*IfType") { - ffi::notify_change_key_value(key.raw_handle(), TRUE, REG_NOTIFY_CHANGE_NAME, 2000)?; + ffi::notify_change_key_value(key.raw_handle() as _, TRUE, REG_NOTIFY_CHANGE_NAME, 2000)?; } while let Err(_) = key.get_value::("NetLuidIndex") { - ffi::notify_change_key_value(key.raw_handle(), TRUE, REG_NOTIFY_CHANGE_NAME, 2000)?; + ffi::notify_change_key_value(key.raw_handle() as _, TRUE, REG_NOTIFY_CHANGE_NAME, 2000)?; } let if_type: DWORD = key.get_value("*IfType")?; @@ -179,7 +179,7 @@ pub fn check_interface(luid: &NET_LUID) -> io::Result<()> { DIREG_DRV, KEY_QUERY_VALUE | KEY_NOTIFY, ) { - Ok(key) => RegKey::predef(key), + Ok(key) => RegKey::predef(key as _), Err(_) => continue, }; @@ -248,7 +248,7 @@ pub fn delete_interface(luid: &NET_LUID) -> io::Result<()> { DIREG_DRV, KEY_QUERY_VALUE | KEY_NOTIFY, ) { - Ok(key) => RegKey::predef(key), + Ok(key) => RegKey::predef(key as _), Err(_) => continue, };