x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

How can I resolve the error stating that XINPUT1_4.dll is missing?

Hey folks, I'm trying my first build of UE4.1 and after a successful build in Visual Studio Express 2013 (On Win 7 Pro x64), I get this curious message:

alt text

Installing Visual Studio distributables didn't seem to do the trick. I understand this is some kind of DirectX error and perhaps something to do with the latest version of DirectX, but the Xinput.h file clearly has exceptions to call up 9.1 version instead.

Anyone have thoughts on this?

Product Version: Not Selected
Tags:
more ▼

asked May 15 '14 at 04:02 AM in C++ Programming

avatar image

Dannthr
21 2 5 7

avatar image Headzup May 15 '14 at 08:57 AM

to my answer: put the file in your C:\Windows\System32 folder

avatar image fawnha Jul 08 '15 at 04:52 PM

I had this problem and the reference was in UNREALEDITOR_AKAUDIO.DLL. I hardcoded the reference in AkAudio.Build.cs to XINPUT9_1_0.lib and the problem went away

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

3 answers: sort voted first

XINPUT is definitely part of the DirectX runtime, the latest version of which you should already have installed on your system before running UE4. If, for some unknown reason, you installed the latest version and it didn't do the trick, you can always manually obtain the file from somewhere and put it beside the rest of windows' DLL's.

more ▼

answered May 15 '14 at 06:21 AM

avatar image

Arshia001
472 28 30 156

avatar image Dannthr May 20 '14 at 04:24 AM

Hey Jamie,

Thanks for the link, the problem is that I'm running Windows 7 and official installations from Microsoft only install XINPUT1_4.dll into a Windows 8 installation, otherwise they install XINPUT9_1_0.

The problem here is that Unreal is supposed to be selecting XINPUT9_1_0 instead when loading. For some reason, building here, it's requiring XINPUT1_4.

I even went into the code and changed all the references to XINPUT.lib to XINPUT9_1_0.lib and it still required XINPUT1_4.dll.

I ran that installer just in case, it didn't install XINPUT1_4.

avatar image Jamie Dale ♦ STAFF May 20 '14 at 11:03 AM

Oh, that's odd. We should be using XInput 1.3 (which is the version that comes with the DX runtimes): http://msdn.microsoft.com/en-us/library/windows/desktop/hh405051%28v=vs.85%29.aspx

We don't require you to have the DX SDK installed, as it should have come along as a third-party dependency from the extra zip files you downloaded.

Could you verify for me that you have the following in your UE4 folder:

  • Engine\Source\ThirdParty\Windows\XInput\XInput.Build.cs

  • Engine\Source\ThirdParty\Windows\DirectX

avatar image Dannthr May 21 '14 at 05:33 AM

Yeah, I have XInput.Build.cs and it's in that folder as well as the DirectX directory with x86 and x64 library directories under sub-folders.

I also have UEBuildWinRT.cs which also references Xinput.lib.

avatar image Jamie Dale ♦ STAFF May 21 '14 at 09:42 AM

Okay, just to make sure that it's not getting confused and including a different XInput.h, could you try adding a build error of some sort to:

  • UE4\Engine\Source\ThirdParty\Windows\DirectX\Include\XInput.h

If you then edit the following (I just add and remove a space) and then save so it builds again:

  • UE4\Engine\Source\Runtime\Core\Private\Windows\XInputInterface.cpp

All being well, you should then get a compile error from XInput.h. Either way, undo the changes you made to the file and let me know.

Thanks.

avatar image bstone Jun 03 '16 at 12:58 PM

XInput.h is not really related. It defines the DLL names but those defines are for loading it dynamically. The problem is that Core links to xinput statically via the XInput module. I've elaborated that a bit more in my answer below.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

I uploaded the ddl in my dropbox. If you trust me download it, if not then not :-)

https://dl.dropboxusercontent.com/u/45568602/XInput1_4.rar

I have a 64bit System so you need it maybe, too. Write a reply when you downloaded it, then I delete it. I hope this helps.

more ▼

answered May 15 '14 at 08:53 AM

avatar image

Headzup
151 7 10 19

avatar image Dannthr May 20 '14 at 04:21 AM

Hey Headzup, thanks for the offer, but I can't start installing mystery DLL files. I appreciate the gesture, nonetheless.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

I had a similar issue and the problem was that my dependencies were messed up. Make sure you have all dependencies downloaded including the files in UE4\Engine\Source\ThirdParty\Windows\DirectX\Lib. The XInput module links against XInput.lib and that's what defines the actuall XInput DLL being used. If you miss xinput.lib in the folder I mentioned above then the linker might find it somewhere else (DirectX SDK).

more ▼

answered Jun 03 '16 at 12:53 PM

avatar image

bstone
69 1 6 6

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question