Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Ciao,
abbiamo un problema!!!
vorremmo realizzare uno sniffer utilizzando WinPcap. Sappiamo che la libreria č scritta in C. Come potremmo fare per utilizzarla in C#??????
grazie in anticipo!!!!
Per usare delle funzioni scritte in C, in .NET esiste il 'Platform Invoke, che permette di utilizzare le funzioni esportate da una DLL.
Questo esempio permette di utilizzare l'API MessageBox che sta nella DLL 'user32.dll'
Da errore perchč 'pcap_t' non esiste. in C#, Se č una struttura la devi riscrivere esattamente a come la trovi nel file *.h C++ in cui č presente, ad esempio:
La struttura Point, in C++ č definita cosė:
Codice sorgente - presumibilmente C# / VB.NET
struct Point
{
DWORD x;
DWORD y;
};
Ora, supponendo che nel .NET Framework questa struttura non esista, la dovremmo scrivere noi per poterla usare e facciamo:
Codice sorgente - presumibilmente C++
publicstruct Point
{
int x;
int y;
}
Permettendoci cosė di usarla.
La stessa cosa va fatta con la struttura che vuoi usare.
Se invece non č una struttura, dovresti darmi pių informazioni a riguardo. ^^
Un altra cosa:
Siccome la funzione restituisce un puntatore, al posto del puntatore si mette IntPtr, che rappresenta un indirizzo.
Ultima modifica effettuata da Dax89 il 11/04/2008 alle 19:21