こんにちは、村尾DOSです。

初期化されていないだけではないでしょうか?

>  JOYINFOEX joyinfo;

   memset( &joyinfo, 0x00, sizeof( JOYINFOEX));
   joyinfo.dwSize = sizeof (JOYINFOEX);
   joyinfo.dwFlags = JOY_RETURNALL;    <----  この行は違うかも。

>  char aa[10];
>  joyinfo.dwXpos=30000;
>  while(joyinfo.dwXpos!=0)
>  {
>   joyGetPosEx(JOYSTICKID1, &joyinfo);
>   printf(itoa(joyinfo.dwButtons, aa, 10));
>  }

こんな感じでどうでしょう?
___________________________________
   村尾DOS   Address ── Web Site http://www.muraodos.com/
             └─── E-Mail ───  b...@muraodos.com