You can not directly use pointer notation in C#. If you are returning a pointer then catch the address in System.IntPtr
Steps to Follow
1. First allocate a memory in unmanaged area to copy the structure from managed code, using Marshal.AllocHGlobal().
2. Copy the structure using Marshal.Copy().
Refer some examples on MSDN or else have a look at .NET Interop Revisited.