Я пытаюсь написать оболочку С# для winpcap. Он выдает предупреждение PInvokeStackImbalance при попытке отладки, но pcap_findalldevs выполняет свою работу. Но я думаю, что это вызовет утечку памяти в программе. Кстати, этот код взят из networkminer. Я не писал его, просто пытался понять winpcap и упаковку.
Это метод в WinPcap.
int pcap_findalldevs( pcap_if_t ** alldevsp, char * errbuf )
Это то, что я написал в своей программе
[DllImport("wpcap.dll", CharSet = CharSet.Ansi)]
internal static extern int pcap_findalldevs(ref IntPtr alldevsp, StringBuilder errbuf);
i = IntPtr.Zero;
StringBuilder stringBuilder;
stringBuilder = new StringBuilder(256);
if (pcap_findalldevs(ref i, stringBuilder) == -1)
return null;