2010-01-14 41 views
1

我試圖在使用遊戲杆的C#中創建應用程序。我去了「http://www.codeproject.com/KB/directx/joystick.aspx」,基本上覆制了這個例子,但我不斷收到以下錯誤: 「不是有效的Win32應用程序(異常來自HRESULT:0x800700C1)」。該應用程序目前是用於測試目的的控制檯應用程序我使用以下內容:C#遊戲杆檢測錯誤

「using Microsoft.DirectX;」 「using Microsoft.DirectX.DirectInput;」

和拋出的錯誤代碼行是

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

我也正在使用Windows 7,不知道有沒有什麼幫助或沒有。

回答

3

如果您使用的是Windows 7的64位版本,請確保編譯您的x86應用程序。託管DirectX僅支持32位,因此如果您正在編譯目標64位或AnyCPU,它將拋出您收到的錯誤。

如果您需要支持64位,我建議您將代碼轉換爲使用SlimDX而不是Managed DirectX。 (就個人而言,我會建議在任何情況下都這樣做,因爲SlimDX遠遠優於MDX ...)