This is a very common question.  There are a few resources at your disposal

  • Read the Microsoft public newsgroups, especially microsoft.public.development.device.drivers
  • Search the web, somebody has probably already asked your question
  • Ask me ;) (but please don't email me, keep it public so that others can see the response)
  • Join the NTDEV alias which is run by OSR

This list is far from definitive, but does offer a good starting point.