I don't think you need the ref in your first delegate signature, unless the native method uses a pointer to an array (double indirection).
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
I don't think you need the ref in your first delegate signature, unless the native method uses a pointer to an array (double indirection).