I am getting linker errors in while building in x86.
x64 is working fine.
- Visual studio 2015 Professional.
1>------ Build started: Project: Divert.Net, Configuration: Release x86 Win32 ------
1>Diversion.obj : error LNK2028: unresolved token (0A000491) "extern "C" int __cdecl WinDivertSetParam(void *,enum WINDIVERT_PARAM,unsigned __int64)" (?WinDivertSetParam@@$$J0YAHPAXW4WINDIVERT_PARAM@@_K@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::SetParam(enum Divert::Net::DivertParam,unsigned __int64)" (?SetParam@Diversion@Net@Divert@@$$FQ$AAM_NW4DivertParam@23@_K@Z)
1>Diversion.obj : error LNK2028: unresolved token (0A0004C3) "extern "C" int __cdecl WinDivertHelperCheckFilter(char const *,enum WINDIVERT_LAYER,char const * *,unsigned int *)" (?WinDivertHelperCheckFilter@@$$J0YAHPBDW4WINDIVERT_LAYER@@PAPBDPAI@Z) referenced in function "public: static bool __clrcall Divert::Net::Diversion::ValidateFilter(class System::String ^,enum Divert::Net::DivertLayer,class System::String ^ %)" (?ValidateFilter@Diversion@Net@Divert@@$$FSM_NP$AAVString@System@@W4DivertLayer@23@A$CAP$AAV45@@z)
1>Diversion.obj : error LNK2028: unresolved token (0A0004C6) "extern "C" int __cdecl WinDivertRecv(void *,void *,unsigned int,struct WINDIVERT_ADDRESS *,unsigned int *)" (?WinDivertRecv@@$$J0YAHPAX0IPAUWINDIVERT_ADDRESS@@pai@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::Receive(cli::array^,class Divert::Net::Address ^,unsigned int %)" (?Receive@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEP$AAVAddress@23@A$CAI@Z)
1>Diversion.obj : error LNK2028: unresolved token (0A0004F4) "extern "C" void * __cdecl WinDivertOpen(char const *,enum WINDIVERT_LAYER,short,unsigned __int64)" (?WinDivertOpen@@$$J0YAPAXPBDW4WINDIVERT_LAYER@@F_K@Z) referenced in function "public: static class Divert::Net::Diversion ^ __clrcall Divert::Net::Diversion::Open(class System::String ^,enum Divert::Net::DivertLayer,short,enum Divert::Net::FilterFlags)" (?Open@Diversion@Net@Divert@@$$FSMP$AAV123@P$AAVString@System@@W4DivertLayer@23@FW4FilterFlags@23@@z)
1>Diversion.obj : error LNK2028: unresolved token (0A0004F9) "extern "C" unsigned int __cdecl WinDivertHelperCalcChecksums(void *,unsigned int,unsigned __int64)" (?WinDivertHelperCalcChecksums@@$$J0YAIPAXI_K@Z) referenced in function "public: unsigned int __clrcall Divert::Net::Diversion::CalculateChecksums(cli::array^,unsigned int,enum Divert::Net::ChecksumCalculationFlags)" (?CalculateChecksums@Diversion@Net@Divert@@$$FQ$AAMIP$01AEIW4ChecksumCalculationFlags@23@@z)
1>Diversion.obj : error LNK2028: unresolved token (0A000510) "extern "C" int __cdecl WinDivertSend(void *,void *,unsigned int,struct WINDIVERT_ADDRESS *,unsigned int *)" (?WinDivertSend@@$$J0YAHPAX0IPAUWINDIVERT_ADDRESS@@pai@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::Send(cli::array^,unsigned int,class Divert::Net::Address ^,unsigned int %)" (?Send@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEIP$AAVAddress@23@A$CAI@Z)
1>Diversion.obj : error LNK2028: unresolved token (0A000511) "extern "C" int __cdecl WinDivertHelperParsePacket(void *,unsigned int,struct WINDIVERT_IPHDR * *,struct WINDIVERT_IPV6HDR * *,struct WINDIVERT_ICMPHDR * *,struct WINDIVERT_ICMPV6HDR * *,struct WINDIVERT_TCPHDR * *,struct WINDIVERT_UDPHDR * *,void * *,unsigned int *)" (?WinDivertHelperParsePacket@@$$J0YAHPAXIPAPAUWINDIVERT_IPHDR@@PAPAUWINDIVERT_IPV6HDR@@PAPAUWINDIVERT_ICMPHDR@@PAPAUWINDIVERT_ICMPV6HDR@@PAPAUWINDIVERT_TCPHDR@@PAPAUWINDIVERT_UDPHDR@@PAPAXPAI@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::ParsePacket(cli::array^,unsigned int,class Divert::Net::IPHeader ^,class Divert::Net::IPv6Header ^,class Divert::Net::ICMPHeader ^,class Divert::Net::ICMPv6Header ^,class Divert::Net::TCPHeader ^,class Divert::Net::UDPHeader ^)" (?ParsePacket@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEIP$AAVIPHeader@23@P$AAVIPv6Header@23@P$AAVICMPHeader@23@P$AAVICMPv6Header@23@P$AAVTCPHeader@23@P$AAVUDPHeader@23@@z)
1>Diversion.obj : error LNK2028: unresolved token (0A00054D) "extern "C" int __cdecl WinDivertGetParam(void *,enum WINDIVERT_PARAM,unsigned __int64 *)" (?WinDivertGetParam@@$$J0YAHPAXW4WINDIVERT_PARAM@@PA_K@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::GetParam(enum Divert::Net::DivertParam,unsigned __int64 %)" (?GetParam@Diversion@Net@Divert@@$$FQ$AAM_NW4DivertParam@23@A$CA_K@Z)
1>Diversion.obj : error LNK2028: unresolved token (0A00059E) "extern "C" int __cdecl WinDivertSendEx(void *,void *,unsigned int,unsigned __int64,struct WINDIVERT_ADDRESS *,unsigned int *,struct _OVERLAPPED *)" (?WinDivertSendEx@@$$J0YAHPAX0I_KPAUWINDIVERT_ADDRESS@@PAIPAU_OVERLAPPED@@@z) referenced in function "public: bool __clrcall Divert::Net::Diversion::SendAsync(cli::array^,unsigned int,class Divert::Net::Address ^,unsigned int %,class Divert::Net::DivertAsyncResult ^)" (?SendAsync@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEIP$AAVAddress@23@A$CAIP$AAVDivertAsyncResult@23@@z)
1>Diversion.obj : error LNK2028: unresolved token (0A0005AE) "extern "C" int __cdecl WinDivertHelperEvalFilter(char const *,enum WINDIVERT_LAYER,void *,unsigned int,struct WINDIVERT_ADDRESS *)" (?WinDivertHelperEvalFilter@@$$J0YAHPBDW4WINDIVERT_LAYER@@PAXIPAUWINDIVERT_ADDRESS@@@z) referenced in function "public: static bool __clrcall Divert::Net::Diversion::EvaluateFilter(class System::String ^,enum Divert::Net::DivertLayer,cli::array^,unsigned int,class Divert::Net::Address ^)" (?EvaluateFilter@Diversion@Net@Divert@@$$FSM_NP$AAVString@System@@W4DivertLayer@23@P$01AEIP$AAVAddress@23@@z)
1>Diversion.obj : error LNK2028: unresolved token (0A0005B3) "extern "C" int __cdecl WinDivertRecvEx(void *,void *,unsigned int,unsigned __int64,struct WINDIVERT_ADDRESS *,unsigned int *,struct _OVERLAPPED *)" (?WinDivertRecvEx@@$$J0YAHPAX0I_KPAUWINDIVERT_ADDRESS@@PAIPAU_OVERLAPPED@@@z) referenced in function "public: bool __clrcall Divert::Net::Diversion::ReceiveAsync(cli::array^,class Divert::Net::Address ^,unsigned int %,class Divert::Net::DivertAsyncResult ^)" (?ReceiveAsync@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEP$AAVAddress@23@A$CAIP$AAVDivertAsyncResult@23@@z)
1>DivertHandle.obj : error LNK2028: unresolved token (0A00003C) "extern "C" int __cdecl WinDivertClose(void *)" (?WinDivertClose@@$$J0YAHPAX@Z) referenced in function "public: bool __clrcall Divert::Net::DivertHandle::Close(void)" (?Close@DivertHandle@Net@Divert@@$$FQ$AAM_NXZ)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertHelperCheckFilter(char const *,enum WINDIVERT_LAYER,char const * *,unsigned int *)" (?WinDivertHelperCheckFilter@@$$J0YAHPBDW4WINDIVERT_LAYER@@PAPBDPAI@Z) referenced in function "public: static bool __clrcall Divert::Net::Diversion::ValidateFilter(class System::String ^,enum Divert::Net::DivertLayer,class System::String ^ %)" (?ValidateFilter@Diversion@Net@Divert@@$$FSM_NP$AAVString@System@@W4DivertLayer@23@A$CAP$AAV45@@z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertHelperEvalFilter(char const *,enum WINDIVERT_LAYER,void *,unsigned int,struct WINDIVERT_ADDRESS *)" (?WinDivertHelperEvalFilter@@$$J0YAHPBDW4WINDIVERT_LAYER@@PAXIPAUWINDIVERT_ADDRESS@@@z) referenced in function "public: static bool __clrcall Divert::Net::Diversion::EvaluateFilter(class System::String ^,enum Divert::Net::DivertLayer,cli::array^,unsigned int,class Divert::Net::Address ^)" (?EvaluateFilter@Diversion@Net@Divert@@$$FSM_NP$AAVString@System@@W4DivertLayer@23@P$01AEIP$AAVAddress@23@@z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertRecv(void *,void *,unsigned int,struct WINDIVERT_ADDRESS *,unsigned int *)" (?WinDivertRecv@@$$J0YAHPAX0IPAUWINDIVERT_ADDRESS@@pai@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::Receive(cli::array^,class Divert::Net::Address ^,unsigned int %)" (?Receive@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEP$AAVAddress@23@A$CAI@Z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertRecvEx(void *,void *,unsigned int,unsigned __int64,struct WINDIVERT_ADDRESS *,unsigned int *,struct _OVERLAPPED *)" (?WinDivertRecvEx@@$$J0YAHPAX0I_KPAUWINDIVERT_ADDRESS@@PAIPAU_OVERLAPPED@@@z) referenced in function "public: bool __clrcall Divert::Net::Diversion::ReceiveAsync(cli::array^,class Divert::Net::Address ^,unsigned int %,class Divert::Net::DivertAsyncResult ^)" (?ReceiveAsync@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEP$AAVAddress@23@A$CAIP$AAVDivertAsyncResult@23@@z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertSend(void *,void *,unsigned int,struct WINDIVERT_ADDRESS *,unsigned int *)" (?WinDivertSend@@$$J0YAHPAX0IPAUWINDIVERT_ADDRESS@@pai@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::Send(cli::array^,unsigned int,class Divert::Net::Address ^,unsigned int %)" (?Send@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEIP$AAVAddress@23@A$CAI@Z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertSendEx(void *,void *,unsigned int,unsigned __int64,struct WINDIVERT_ADDRESS *,unsigned int *,struct _OVERLAPPED *)" (?WinDivertSendEx@@$$J0YAHPAX0I_KPAUWINDIVERT_ADDRESS@@PAIPAU_OVERLAPPED@@@z) referenced in function "public: bool __clrcall Divert::Net::Diversion::SendAsync(cli::array^,unsigned int,class Divert::Net::Address ^,unsigned int %,class Divert::Net::DivertAsyncResult ^)" (?SendAsync@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEIP$AAVAddress@23@A$CAIP$AAVDivertAsyncResult@23@@z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertSetParam(void *,enum WINDIVERT_PARAM,unsigned __int64)" (?WinDivertSetParam@@$$J0YAHPAXW4WINDIVERT_PARAM@@_K@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::SetParam(enum Divert::Net::DivertParam,unsigned __int64)" (?SetParam@Diversion@Net@Divert@@$$FQ$AAM_NW4DivertParam@23@_K@Z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertGetParam(void *,enum WINDIVERT_PARAM,unsigned __int64 *)" (?WinDivertGetParam@@$$J0YAHPAXW4WINDIVERT_PARAM@@PA_K@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::GetParam(enum Divert::Net::DivertParam,unsigned __int64 %)" (?GetParam@Diversion@Net@Divert@@$$FQ$AAM_NW4DivertParam@23@A$CA_K@Z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertHelperParsePacket(void *,unsigned int,struct WINDIVERT_IPHDR * *,struct WINDIVERT_IPV6HDR * *,struct WINDIVERT_ICMPHDR * *,struct WINDIVERT_ICMPV6HDR * *,struct WINDIVERT_TCPHDR * *,struct WINDIVERT_UDPHDR * *,void * *,unsigned int *)" (?WinDivertHelperParsePacket@@$$J0YAHPAXIPAPAUWINDIVERT_IPHDR@@PAPAUWINDIVERT_IPV6HDR@@PAPAUWINDIVERT_ICMPHDR@@PAPAUWINDIVERT_ICMPV6HDR@@PAPAUWINDIVERT_TCPHDR@@PAPAUWINDIVERT_UDPHDR@@PAPAXPAI@Z) referenced in function "public: bool __clrcall Divert::Net::Diversion::ParsePacket(cli::array^,unsigned int,class Divert::Net::IPHeader ^,class Divert::Net::IPv6Header ^,class Divert::Net::ICMPHeader ^,class Divert::Net::ICMPv6Header ^,class Divert::Net::TCPHeader ^,class Divert::Net::UDPHeader ^)" (?ParsePacket@Diversion@Net@Divert@@$$FQ$AAM_NP$01AEIP$AAVIPHeader@23@P$AAVIPv6Header@23@P$AAVICMPHeader@23@P$AAVICMPv6Header@23@P$AAVTCPHeader@23@P$AAVUDPHeader@23@@z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" unsigned int __cdecl WinDivertHelperCalcChecksums(void *,unsigned int,unsigned __int64)" (?WinDivertHelperCalcChecksums@@$$J0YAIPAXI_K@Z) referenced in function "public: unsigned int __clrcall Divert::Net::Diversion::CalculateChecksums(cli::array^,unsigned int,enum Divert::Net::ChecksumCalculationFlags)" (?CalculateChecksums@Diversion@Net@Divert@@$$FQ$AAMIP$01AEIW4ChecksumCalculationFlags@23@@z)
1>Diversion.obj : error LNK2019: unresolved external symbol "extern "C" void * __cdecl WinDivertOpen(char const *,enum WINDIVERT_LAYER,short,unsigned __int64)" (?WinDivertOpen@@$$J0YAPAXPBDW4WINDIVERT_LAYER@@F_K@Z) referenced in function "public: static class Divert::Net::Diversion ^ __clrcall Divert::Net::Diversion::Open(class System::String ^,enum Divert::Net::DivertLayer,short,enum Divert::Net::FilterFlags)" (?Open@Diversion@Net@Divert@@$$FSMP$AAV123@P$AAVString@System@@W4DivertLayer@23@FW4FilterFlags@23@@z)
1>DivertHandle.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl WinDivertClose(void *)" (?WinDivertClose@@$$J0YAHPAX@Z) referenced in function "public: bool __clrcall Divert::Net::DivertHandle::Close(void)" (?Close@DivertHandle@Net@Divert@@$$FQ$AAM_NXZ)
1>D:\DivertNet\Divert.Net-master\ide\Divert.Net\Divert.Net......\build\Release x86\Divert.Net.dll : fatal error LNK1120: 24 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========