私はlib SharpPCapを使用してパケットをキャプチャし、それらを解析してPacketArrivalEventHandler関数でflvビデオアドレスを探します。クラスの主要部分は、次のようである:SharpPCapの2番目のLivePCapDeviceが機能しません。
class addrdetector
{
private LivePCapDevice device;
private device_OnPacketArrival(object sender, CaptureEventArgs e)
{
/* some analysis and some output */
if (match)
{
device.StopCapture();
device.Close();
}
}
public Analyse()
{
var devices = LivePcapDeviceList.Instance;
device = devices[2];
device.OnPacketArrival +=
new PacketArrivalEventHandler(device_OnPacketArrival);
device.Open();
device.StartCapture();
}
}
Iプログラムでaddrdectorの2つのインスタンスがある場合、最初のインスタンスが正しい出力を有するが、第二は、任意の出力を有していません。 2番目のパケットがパケットをキャプチャできないようです。
私は、同じメイン関数で2つのLivePCapDeviceのインスタンスをテストしており、正常に動作しています。彼らはまた、2つのEXE.sで動作することができます。しかし、私はので、なぜ彼らのプログラムでの紛争... おかげ〜