[Compuware Corporation] [Compuware NuMega home page]                [NuMega Lab]
[teal]

 [DriverStudio]    [Image][Image]
   Home
 [Driver Products]        Driver Technical Tips
   DriverStudio          How to Share an Event between Kernel Mode and User Mode
   DriverBundle
   Previews              A kernel mode driver and an application can easily share an
   Compatibility         event for synchronization using the named event feature of
 [Downloads]             the Win32 API. Here's how:
 Wizards                  1. The application creates a named event by calling the Win32
   Utilities             API CreateEvent.
   NT source
 examples                 2. The application calls the driver with DeviceIoControl, and
   VxD source            the driver opens the event. With DriverWorks, you can do this
 examples                 with class KEvent:
   WDM source
 examples                         KEvent TheEvent(
 [Resources]                             KUstring(L"\\BaseNamedObjects\\SynchEvent"),
 Technical papers                         SynchronizationEvent
   Useful links                          );
   Technical tips
 [Support]               Notice that the event is in object directory
                          \BaseNamedObjects. Note that the application could also pass
 Support                  the handle to the driver, rather than opening by name.
   Knowledge base
   Problem               3. The application can wait on the event, pending
 submission               notification by the driver. Use Win32 API
   Product               WaitForSingleObject.
 registration
   Release notes         4. To signal the application, the driver sets the event:
 [Shop NuMega]  
 Buy it!                          TheEvent.Set();
   Price list
   How to buy            This causes the application to return from
   Sales offices         WaitForSingleObject.

                          Back to technical tip start page.
 [Y2K Compliance]


 [More information]


  DriverCentral  DriverStudio  Free downloads  Resources  Support and
                          Services  Shop NuMega
     Compuware NuMega  Tel: +1 603 578-8400  Updated: 9 August 1999 
                      Problems? Contact our webmaster.
