PInvoke.net
During my adventures in CryptoAPI land I found a web site that has helped me to create appropriate P/Invoke declarations.
The site is called www.pinvoke.net and it contains P/Invoke declarations for a large number of Win32 APIs (always in C# and sometimes in VB) as well as a few examples. Even though not all Win32 APIs can be found there I found most of the ones I was looking for.
A great resource!
An example:
[DllImport("CRYPT32.DLL", EntryPoint="CertOpenStore", CharSet=CharSet.Auto, SetLastError=true)]
public static extern IntPtr CertOpenStoreIntPtrPara( int storeProvider, int encodingType, IntPtr hcryptProv, int flags, IntPtr pvPara);