Link to home
Start Free TrialLog in
Avatar of auk_ie
auk_ie

asked on

Starting Driver Development (NDIS), A good place?

Hello I am new to driver development

I want to start building an NDIS protocol driver to manipulate ethernet frames.

I want to know if anyone knows of a good tutorial/book which steps through a simple hello world driver example.

I have the ddk and read alot of it. But now I just want be able to apply some of that knowledge practically. All I want to do is build a write and compile a simple NDIS protocol that does absolutely nothing but can be installed and deleted
Avatar of chensu
chensu
Flag of Canada image

How about

IMSamp.exe: NDIS 4.0 Intermediate Driver Sample
http://support.microsoft.com/default.aspx?scid=kb;en-us;178322&Product=ddk

Ntpacket.exe: Updated Windows NT 4.0 NDIS 3.0 Packet Sample Available
http://support.microsoft.com/default.aspx?scid=kb;en-us;238652&Product=ddk

Device Driver Development for Microsoft® Windows®
http://chsw.com/ddk/
Avatar of jkr
Have you seen http://support.microsoft.com/default.aspx?scid=kb;en-us;178322 ("IMSamp.exe: NDIS 4.0 Intermediate Driver Sample")?

"This is an network driver interface specification (NDIS) 4.0 intermediate driver sample. This sample is designed to layer in between the installed transports and the installed miniports. Currently, this sample only receives packets and passes them on to lower layers. The upper edge of this sample is a miniport interface, the lower edge looks like a transport. "

Apart from that one, www.osronline.com is always a good starting point about drivers.
Avatar of auk_ie
auk_ie

ASKER

Hi, Yes I have the latest DDK and the samples that come with it but even the simplest of these is thousands of lines of code. I can't get my head around these samples. I just want to learn how to write a simple hello world protocol driver with visual studio prefferably and take it from there.

I think i have to start by setting up visual studio, then to write
- One a .cpp and .h file with the relevant driver fundtions DriverEntry etc.
- Possibly a sources file for the DDKBUILD util
- An inf file and also some code that will install it programmatically

I know theres a lot of steps missing but basically I was wondering if anyone knew all the steps envolved or perhaps even point to a good walkthrough
>>perhaps even point to a good walkthrough

HAve you checked OSRonline? http://www.osronline.com/section.cfm?id=26 ("The Basics") and especially http://www.osronline.com/article.cfm?id=20 ("Getting Started Writing Windows Drivers") offer such a walkthrough.
Avatar of auk_ie

ASKER

Hmm not much of a walkthrough more a basic faq. The question I really wanted elaborated was

Q8 How Do I Start Cranking Code?

Get the source code sample driver for a device of similar type to the one that you need to support. Assuming your license allows it, start by modifying this driver.

ie start off from a sample. I guess this is what I'm going to have to do. Just pick a sample and go through it line by line to see if I can understand it, so I can start modifying it. Doesn't look like people start writing drivers from scratch?

ASKER CERTIFIED SOLUTION
Avatar of jkr
jkr
Flag of Germany image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial