[Winpcap-users] WinPCap & Managed Extensions

Gianluca Varenni gianluca.varenni at cacetech.com
Wed Oct 12 15:45:59 GMT 2005


Hi.

I suggest you to read this message:

http://www.mail-archive.com/winpcap-users@winpcap.polito.it/msg02138.html

Have a nice day
GV

----- Original Message ----- 
From: "Alessandro Baldisserri" <bujia at libero.it>
To: "winpcap-users" <winpcap-users at winpcap.org>
Sent: Wednesday, October 12, 2005 8:24 AM
Subject: Re: [Winpcap-users] WinPCap & Managed Extensions


Thanks fou your detailed answer.
I develop my service with Visual C++ .NET, with WindowsService procedure.
In my project I refer to wpcap.lib and consequentially to wpcap.dll, further 
more I refer to packet.lib and consequentially to packet.dll. I don't use 
wanpacket.dll, and NM driver. So in service dependecies I inserted NPF but 
result was the same. I start NPF automatically at boot. In windows XP I 
don't how to set startup of a driver at boot, but I change in the Registry, 
on the Value "Start" of the key associated with the driver NPF, I put 1, 
that mean "start at boot". It's correct? I think yes, but result is the 
same....service start and stop with an error... I post the error:

Not able to start service. System.TypeLoadException: not able to load type 
pcap on assembly MyService, Version=1.0.2111.29138, Culture=Neutral, 
PublicKeyToken=null.
   at MyService.OnStart(String[] args)
   at System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback (Object 
state)

I hope that you understand a bit what's my problem...I don't how to 
proceed...

Thanks in advance.
Alessandro






---------- Initial Header -----------

>From      : winpcap-users-bounces at winpcap.org
To          : winpcap-users at winpcap.org
Cc          :
Date      : Tue, 11 Oct 2005 18:34:59 -0400
Subject : Re: [Winpcap-users] WinPCap & Managed Extensions







> Loris Degioanni wrote:
> > If I remember well, the article at:
> >
> > http://www.codeproject.com/dotnet/dotnetwinpcap.asp
> >
> > explains how to use WinPcap from .net.
>
> ... Now that I think about it, I think I know what the problem in this
> thread is.  It's probably that either the NPF or NM driver (or both)
> haven't been started before Alessandro's service tries to start.
>
> The main WinPcap DLL starts NPF when it gets loaded, and one of the
> dependencies of wanpacket.dll starts NM when it gets loaded.  If the
> service's executable explicitly links against the WinPcap DLLs (which I
> think you can do in C++, but not C# or VB.net), then the service process
> itself will load those DLLs when it starts, which will try to start both
> of those drivers.
>
> But the drivers take a *long* time to start (at least on 2000 Pro),
> because the OS is under heavy service-start load at boot time.
>
> The solution is to either mark your service as depending on both NPF and
> NM, or mark NPF and NM as "system" or (maybe) "boot".  That will make
> them start before the service's EXE even tries to load, so the DLL load
> time will be drastically reduced.  So the service will be able to call
> StartServiceCtrlDispatcher earlier, and not have its process killed by 
> SCM.
>
> To mark them as system (again, on 2K Pro), bring up device manager,
> select View -> Show nonpresent devices, then expand "non-PnP devices"
> and go to the properties on both the "NetGroup Packet Filter" and
> "Network Monitor" items, then go to the "Driver" tab inside the dialog,
> and change the startup type from "Demand" to "System" on both items.
>


_______________________________________________
Winpcap-users mailing list
Winpcap-users at winpcap.org
https://www.winpcap.org/mailman/listinfo/winpcap-users



More information about the Winpcap-users mailing list