Using win32api

Can anyone point me in the right direction for some good, in depth
examples
of using Win32API. I"m extremely lost when it comes to
packing/unpacking
the data. After many many searches, I find several places where memcpy
is
being used and others where DL is also being used. Other places it
doesn’t
look necessary. Here’s the specific function i’m trying to hook into

DWORD WNetAddConnection2(
__in LPNETRESOURCE lpNetResource, ← NETRESOURCE Structure
__in LPCTSTR lpPassword,
__in LPCTSTR lpUsername,
__in DWORD dwFlags
);

The packing of the structure is what is giving me the most confusion.
Here’s what I have so far.