I also recommend that you check out the Jared Parsons PInvoke Toolkit. You can download it here:
http://www.codeplex.com/clrinterop/Release/ProjectReleases.aspx?ReleaseId=14120
This makes adding signature signatures to your code a breeze. He doesn’t always choose the right types of interaction, but he’s usually pretty close, and even if you need to make some changes, he’s still usually faster than manually translating everything.
source share