public static string GetNativeString(IntPtr pointer) { if(pointer != IntPtr.Zero) { string result = Marshal.PtrToStringAnsi(pointer); // FIXME why ANSI? why not Uni? Release(pointer); return result; } else { return null; } }