我在过滤 Pcap 文件的前 1 秒并通过 C# 命令导出它时遇到了一个小问题。下面的命令在 CMD 中执行得很好:
c:\Program Files\Wireshark\tshark.exe -r 10Secfile.pcap -T fields -E separator=, -E quote=d -e wlan_mgt.fixed.timestamp -e radiotap.mactime -e wlan_mgt.ssid -e radiotap.dbm_antsignal -e wlan.fc.type_subtype -R "frame.time_relative <=1.0" >> 1SecFile.txt
但是当我尝试在 C# 中做同样的事情时:
strCmdText = "/C \"c:\\Program Files\\Wireshark\\tshark.exe\" -r 10SecFile.pcap -T fields -E separator=, -E quote=d -e wlan_mgt.fixed.timestamp -e radiotap.mactime -e wlan_mgt.ssid -e radiotap.dbm_antsignal -e wlan.fc.type_subtype -R \"frame.time_relative <=1.0\" >> 1SecFile.txt";
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo = new System.Diagnostics.ProcessStartInfo("CMD.exe", strCmdText);
process.Start();
process.WaitForExit();
我收到此错误:“系统找不到指定的文件命令”。而且我确信可以找到所有可执行文件的路径,因为只要我删除最后一个过滤器,代码就可以工作:
-R \"frame.time_relative <=1.0\"
我什至在“strCmdText=”之后放置了一个断点,并手动复制了它的值并将其粘贴到 CMD 中,它工作得很好。
如果你能帮我解决这个问题,我真的很感激。