制作 wpcap.dll "optional"

Make wpcap.dll "optional"

本文关键字:optional dll wpcap 制作      更新时间:2023-10-16

我正在编写一个利用WinPcap访问网络流量的程序。

我的问题是,假设我在没有安装 WinPcap(即没有 wpcap.dll)的机器上运行该程序,一旦启动,可执行文件将尝试加载 DLL 依赖项并在发现没有 wpcap.dll 时崩溃。

在这种情况下,我想回退到 WinSock 而不会让程序崩溃。这可能吗?

我能想象到的唯一解决方案是从链接器中删除 winpcap 依赖项,并手动尝试通过 LoadLibrary 调用加载 wpcap DLL。我可以以某种方式防止应用程序初始化期间崩溃吗?(即捕获"找不到 DLL"并使用 WinSocks 替代方案继续执行)

谢谢!

您的选项是:

  1. 按照问题中的建议从加载时切换到运行时链接。这意味着使用 LoadLibraryGetProcAddress 加载 DLL 并绑定到其函数。
  2. 切换到延迟加载 DLL。