C # Ошибка обнаружения джойстика - PullRequest
1 голос
/ 14 января 2010

Я пытаюсь создать приложение на C #, которое использует джойстик. Я перешел к "http://www.codeproject.com/KB/directx/joystick.aspx" и скопировал пример точно, но продолжаю получать ошибку: "не является допустимым приложением Win32. (Исключение из HRESULT: 0x800700C1)". Приложение в настоящее время является консольным приложением для тестирования. Я использовал следующие включает в себя:

"используя Microsoft.DirectX;" "используя Microsoft.DirectX.DirectInput;"

и строка кода, которая выдает ошибку:

DeviceList gameControllerList = Manager.GetDevices(DeviceClass.GameControl,EnumDevicesFlags.AttachedOnly);

Также я использую Windows 7, не уверен, помогает ли это или нет.

1 Ответ

3 голосов
/ 14 января 2010

Если вы используете 64-битную версию Windows 7, обязательно скомпилируйте ваше приложение для x86. Управляемый DirectX поддерживается только в 32-битной среде, поэтому, если вы компилируете целевой 64-битный или AnyCPU, он выдаст ошибку, которую вы получаете.

Если вам нужна поддержка для 64-битной системы, я рекомендую преобразовать ваш код для использования SlimDX вместо Managed DirectX. (Лично я рекомендовал бы делать это в любом случае, поскольку SlimDX намного превосходит MDX ...)

...