I'm starting to dive into some Windows 7 driver development. One thing that is not clear is how a managed code program can access information from the driver (communicating, for example with a digital I/O card).
For example, a driver (kernel- or user-mode) would manage access to registers on a PCI/PCIe card, but reads/writes of the register data must be available to a programmer writing managed code (C#, VB.NET) via a .NET class.
I do not want to have to resort to P/Invoke as in Win32API calls.
Is this a matter of memory sharing (IOCTL), do I use an intermediate managed DLL to "hide" the P/Invoke, or is there something simple that I'm missing?
Thanks!