private void EventsAttach(IntPtr eventManager, IntPtr enentHandlerPtr) { string exceptionMsg = "Failed to subscribe to event notification"; if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerOpening, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (Opening)"); } if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerBuffering, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (Buffering)"); } //if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerPlaying, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) // throw new OutOfMemoryException(exceptionMsg + " (Playing)"); if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerPaused, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (Paused)"); } if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerStopped, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (Stopped)"); } if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerEndReached, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (EndReached)"); } if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerEncounteredError, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (EncounteredError)"); } if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerTimeChanged, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (TimeChanged)"); } if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerPositionChanged, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (PositionChanged)"); } if (_wrapper.ExpandedEventAttach(eventManager, EventTypes.MediaPlayerSnapshotTaken, enentHandlerPtr, (IntPtr)_wrapper.NativeIndex) != 0) { throw new OutOfMemoryException(exceptionMsg + " (SnapshotTaken)"); } }