parent
b3d47f2ae5
commit
c4e858d346
|
|
@ -430,7 +430,6 @@ if(LIBICSNEO_ENABLE_RAW_ETHERNET)
|
|||
add_definitions(-DWPCAP -DHAVE_REMOTE)
|
||||
else()
|
||||
target_include_directories(icsneocpp PUBLIC AFTER ${LIBICSNEO_NPCAP_INCLUDE_DIR})
|
||||
add_definitions(-DNPCAP)
|
||||
endif()
|
||||
else()
|
||||
find_package(PCAP REQUIRED)
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ public:
|
|||
bool ok() const;
|
||||
private:
|
||||
PCAPDLL();
|
||||
HINSTANCE dll;
|
||||
HINSTANCE dll = nullptr;
|
||||
void closeDLL();
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,21 +28,15 @@ bool PCAPDLL::ok() const
|
|||
|
||||
PCAPDLL::PCAPDLL()
|
||||
{
|
||||
#ifdef NPCAP // Use -DLIBICSNEO_NPCAP_INCLUDE_DIR when configuring, point towards the npcap includes
|
||||
DLL_DIRECTORY_COOKIE cookie = 0;
|
||||
TCHAR dllPath[512] = { 0 };
|
||||
int len = GetSystemDirectory(dllPath, 480); // be safe
|
||||
if (len) {
|
||||
_tcscat_s(dllPath, 512, TEXT("\\Npcap"));
|
||||
cookie = AddDllDirectory(dllPath);
|
||||
}
|
||||
dll = LoadLibraryEx(TEXT("wpcap.dll"), nullptr, LOAD_LIBRARY_SEARCH_USER_DIRS);
|
||||
|
||||
if (cookie)
|
||||
RemoveDllDirectory(cookie);
|
||||
#else // Otherwise we'll use WinPCAP, or npcap in compatibility mode
|
||||
TCHAR dir[512] = {0};
|
||||
if(GetSystemDirectory(dir, 480)) {
|
||||
_tcscat_s(dir, 512, TEXT("\\Npcap"));
|
||||
if(SetDllDirectory(dir)) {
|
||||
// will search for Npcap first, then fall back to WinPcap
|
||||
dll = LoadLibrary(TEXT("wpcap.dll"));
|
||||
#endif
|
||||
SetDllDirectory(nullptr); // reset
|
||||
}
|
||||
}
|
||||
|
||||
if(dll == NULL) {
|
||||
closeDLL();
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@ local_scheme = "no-local-version"
|
|||
|
||||
[tool.scikit-build.cmake.define]
|
||||
LIBICSNEO_ENABLE_BINDINGS_PYTHON = true
|
||||
LIBICSNEO_ENABLE_TCP = true
|
||||
CMAKE_MSVC_RUNTIME_LIBRARY = "MultiThreaded"
|
||||
|
||||
[tool.cibuildwheel]
|
||||
|
|
|
|||
Loading…
Reference in New Issue