public static unsafe IntPtr Create(params IntPtr[] values) { if (values == null) throw new ArgumentNullException ("values"); fixed (IntPtr* pv = values) { return CFArrayCreate (IntPtr.Zero, (IntPtr) pv, values.Length, kCFTypeArrayCallbacks_ptr); } }