예제 #1
0
        /// <summary>
        /// Erzeugt eine neue Empfangseinheit.
        /// </summary>
        /// <returns>Die angeforderte Empfangseinheit.</returns>
        public static RawInputSink Create()
        {
            // Will create a private form
            var form = new _Sink();

            try
            {
                // Create an connect
                form.RawDevice = RawInputSink.Create(form.Handle);

                // Register for cleanup
                form.RawDevice.m_Form = form;

                // Report
                return(form.RawDevice);
            }
            catch
            {
                // Cleanup
                form.Dispose();

                // Forward
                throw;
            }
        }
        /// <summary>
        /// Wird aufgerufen, wenn dieses Oberflächenelement geladen wurde.
        /// </summary>
        /// <param name="sender">Wird ignoriert.</param>
        /// <param name="e">Wird ignoriert.</param>
        private void UserControl_Loaded( object sender, EventArgs e )
        {
            // Connect
            m_RawDevice = RawInputSink.Create();

            // Attach to notification
            m_RawDevice.SetReceiver( Process );
        }
        /// <summary>
        /// Wird aufgerufen, wenn dieses Oberflächenelement geladen wurde.
        /// </summary>
        /// <param name="sender">Wird ignoriert.</param>
        /// <param name="e">Wird ignoriert.</param>
        private void UserControl_Loaded(object sender, EventArgs e)
        {
            // Connect
            m_RawDevice = RawInputSink.Create();

            // Attach to notification
            m_RawDevice.SetReceiver(Process);
        }
 /// <summary>
 /// Wird aufgerufen, wenn das Oberflächenelement entfernt wurde.
 /// </summary>
 /// <param name="sender">Wird ignoriert.</param>
 /// <param name="e">Wird ignoriert.</param>
 private void UserControl_Unloaded( object sender, RoutedEventArgs e )
 {
     // Cleanup
     using (m_RawDevice)
         m_RawDevice = null;
 }
 /// <summary>
 /// Wird aufgerufen, wenn das Oberflächenelement entfernt wurde.
 /// </summary>
 /// <param name="sender">Wird ignoriert.</param>
 /// <param name="e">Wird ignoriert.</param>
 private void UserControl_Unloaded(object sender, RoutedEventArgs e)
 {
     // Cleanup
     using (m_RawDevice)
         m_RawDevice = null;
 }