Autor Tema: Problema DirectInput Joystick  (Leído 4803 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado antoniojdobarro

  • PIC12
  • **
  • Mensajes: 84
Problema DirectInput Joystick
« en: 15 de Febrero de 2011, 09:59:53 »
El siguiente código debería reconocer un joystick en C#, pero me surge el problema con el segundo "joystick" dice que la variable local no está definida. (Lo copie del foro oficial de Microsoft añadiendo lo que está en cursiva para que reconozca las variables.)


// Crear dispositivo joystick

            Microsoft.DirectX.DirectInput.Device joystick;

            foreach (DeviceInstance di in Manager.GetDevices(DeviceClass.GameControl, EnumDevicesFlags.AttachedOnly))
           
            {
                joystick = new Device(di.InstanceGuid);
                continue;

            }
           
            if (joystick == null)
            {
                //Throw exception if joystick not found.
                throw new Exception("No joystick found.");
            }

Desconectado antoniojdobarro

  • PIC12
  • **
  • Mensajes: 84
Re: Problema DirectInput Joystick
« Respuesta #1 en: 15 de Febrero de 2011, 15:04:27 »
Solucionado!!!

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Problema DirectInput Joystick
« Respuesta #2 en: 15 de Febrero de 2011, 15:46:25 »
Solucionado!!!

Sería útil que comentes cual era el error, puede que a otro usuario le sirva!  ;-)
No contesto mensajes privados, las consultas en el foro

Desconectado antoniojdobarro

  • PIC12
  • **
  • Mensajes: 84
Re: Problema DirectInput Joystick
« Respuesta #3 en: 15 de Febrero de 2011, 17:49:52 »
Simplemente era un error de definición de variables locales.

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Problema DirectInput Joystick
« Respuesta #4 en: 15 de Febrero de 2011, 19:39:40 »
Simplemente era un error de definición de variables locales.

El objeto joystick se renovaba por cada joystick que había en el equipo. Debió declararse como un arreglo de joysticks.

Microsoft.DirectX.DirectInput.Device[] joystick;