Fix tap-windows for arm64

This commit is contained in:
Chen Xijun 2022-07-27 14:54:20 +08:00
commit 389729afbd
4 changed files with 15 additions and 4 deletions

View file

@ -78,7 +78,12 @@ public:
{
#ifdef _WIN64
is64Bit = TRUE;
#ifdef _M_ARM64
tapDriverPath = "\\tap-windows\\arm64\\zttap300.inf";
#else
tapDriverPath = "\\tap-windows\\x64\\zttap300.inf";
#endif
#else
is64Bit = FALSE;
IsWow64Process(GetCurrentProcess(),&is64Bit);

View file

@ -25,10 +25,11 @@
#define __TAP_H
#ifndef NDIS_SUPPORT_NDIS6
#define NDIS_MINIPORT_DRIVER 1
#define NDIS_SUPPORT_NDIS6 1
#define NDIS_SUPPORT_NDIS61 1
#define NDIS_SUPPORT_NDIS630 1
#define NDIS_WDM1 1
#define NDIS61_MINIPORT 1
#define NDIS630_MINIPORT 1
#endif
#include <ntifs.h>

View file

@ -34,8 +34,9 @@ DeviceDescription = "ZeroTier Virtual Port"
Provider = "ZeroTier"
[Manufacturer]
%Provider%=zttap300,NTx86
;%Provider%=zttap300,NTx86
;%Provider%=zttap300,NTamd64
%Provider%=zttap300,NTarm64
[zttap300.NTx86]
%DeviceDescription% = zttap300.ndi, root\zttap300 ; Root enumerated
@ -45,6 +46,10 @@ Provider = "ZeroTier"
%DeviceDescription% = zttap300.ndi, root\zttap300 ; Root enumerated
%DeviceDescription% = zttap300.ndi, zttap300 ; Legacy
[zttap300.NTarm64]
%DeviceDescription% = zttap300.ndi, root\zttap300 ; Root enumerated
%DeviceDescription% = zttap300.ndi, zttap300 ; Legacy
;----------------- Characteristics ------------
; NCF_PHYSICAL = 0x04
; NCF_VIRTUAL = 0x01

View file

@ -647,7 +647,7 @@
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>wbemuuid.lib;wsock32.lib;ws2_32.lib;Iphlpapi.lib;Rpcrt4.lib;zeroidc.lib;bcrypt.lib;userenv.lib;crypt32.lib;secur32.lib;ncrypt.lib;ntdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
<AdditionalLibraryDirectories>$(SolutionDir)..\zeroidc\target\x86_64-pc-windows-msvc\release\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalLibraryDirectories>$(SolutionDir)..\zeroidc\target\aarch64-pc-windows-msvc\release\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />