Pcap .NET库:找不到PcapDotNet.Core.DLL

问题描述 投票:0回答:2

使用来自Github(https://github.com/PcapDotNet/Pcap.Net/wiki/Using-Pcap.Net-in-your-programs)的PcapDotNet库,我构建了一个Windows服务,允许远程网络嗅探以进行通信网络故障排除。部署后,服务无法启动。

启动时,Windows事件日志显示:

Service cannot be started. System.IO.FileNotFoundException: Could not load file or assembly 'PcapDotNet.Core.dll' or one of its dependencies. The specified module could not be found.
File name: 'PcapDotNet.Core.dll' at NewPcapService.svcPcapServer.ServiceStart

按照上面的pcapDotNet wiki页面中的指导原则,我在发布模式下构建了项目,并安装了所有推荐的可再发行软件包。

“缺失”文件PcapDotNet.Core.dll与其他3个PcapDotNet DLL位于与服务EXE相同的文件夹中。

我还在Windows和Windows \ System32文件夹中放了所有4个DLL的副本,但都无济于事。

有人可以帮忙吗?该库是我们为系统故障排除而设计的一些重要网络测试的核心。

c# windows service pcap.net
2个回答
1
投票

请注意,该文件可能不会“丢失”,但可能是“其中一个依赖项”。

这基本上是Pcap.Net FAQ中的问题6。

请确保您遵循Using-Pcap.Net-in-your-programs guide中的所有步骤,因为它最有可能解决您的问题,就像之前为几个人所做的那样。


0
投票

虽然(我认为)我遵循了Using-Pcap.Net-in-your-programs guide中的建议,但我仍然缺少x86的可再发行组件包。我跳过了它,因为目标主机是64位机器。

为简单起见,我通过命令行安装了所有推荐的VC ++包:

vcredist_x86_2010.exe /passive /norestart
vcredist_x64_2010.exe /passive /norestart
vcredist_x86_2013.exe /install /passive /norestart
vcredist_x64_2013.exe /install /passive /norestart

现在应用程序工作正常。

© www.soinside.com 2019 - 2024. All rights reserved.