I’m trying to use the sample c# script for the logitech g27 steering wheel. I’m in OSX and Unity5. I’m going mad trying to get the dll to load.
The error I get is:
DllNotFoundException: LogitechSteeringWheel
LogitechSteeringWheel.Update () (at Assets/Resources/Scripts/Runtime/libs/Logitech/Script Sample/LogitechSteeringWheel.cs:52)
The dll file is placed in Assets/Plugins/Logitech/x64 and in Assets/Editor/Logitech/x64 (the x86 verisions are also in separate folder x86, but 'I’m working on a 64bit Osx and compiling for 64bit).
If anyone can shed any light, I’m stuck with this and I have little time to make it work.
The LogitechSteeringWheel.dll is in the asset store. Belngs to the Logitech Pack. As I wrote I’m working in unity5 in OSX. I’m unsure how this works, but I need the LogitechSteeringWheel to work in OSX. I tagged the dll for Editor and Standalone platform, but when the script loads the dll I’m still getting the error.
I am sorry, but it’s impossible to make it work on OSX. LogitechSteeringWheel.dll is a native Windows library, so it’s only compatible with Windows. On OSX you have to have OSX native library or a bundle.
Thanks Kyle but I’m still getting the same error :(:
I’m also getting this confusing error before the DllNotFound exception:
Not sure how any operation can fail and be successful at the same time though and from I found on the web the GetDllDirectory can only be called from C++ .
Maybe that dll has dependencies ? And you’re right GetDllDirectory is called from C++, and most of the native plugins are compiled with C++ But in this case, GetDllDirectory is not to blame.
I’ve imported all the required DLLs straight from the official Logitech SDK and kept everything except for the incompatible “x86” folders. I recently reinstalled windows and Unity 5 along with all x64 Visual C++ redistributables released to date(2005/08/10/12/13/15) only to see those same errors haunting me back again :
I’m also attaching the project package here for anyone who wants to have a look. Thanks for your support Thomas :).
Okey, here’s what I found, it seems LogitechSteeringWheel.dll is dependent on 64 bit xinput1_3.dll which isn’t available by default, at least it wasn’t on my PC, you can acquire it in two ways:
or google for “xinput1_3.dll x64 download” , download it, and place it next to LogitechSteeringWheel.dll
Btw, you can find missing dependencies yourself by installing http://www.dependencywalker.com/ x64 bit DependencyWalker, drag & drop dll, and it will show you missing dlls on your system.
Can’t thank you enough for this Tomas :). The DLL can be found in Windows\System32 or Windows\SysWOW64 for the 32 and 64bit versions respectively. I’ll add a review later on the AssetStore page concerning this issue once I’ve tested it thoroughly.
so glad to see solve you problem ,and when you solve this problem,can you using the LogiSDK in you program.I found my program can’t initialize it.Just like below.
Looks like there are quite a few out here who have been facing the issue regarding connecting their g29 with unity. I was hoping it would be pretty straightforward, as the wheel has become a standard for any simulator, but Im getting the same error, after trying all the solutions out here. Initially, I did not have a Plugins folder in my assets, which I created and put all the dll files in, including xinput1_3.dll file.
and my path look for dll files was. Assets/Plugins/x64(or x86_64, I tried both) but didn’t seem to work. one of the comments mentioned to have a hierarchy like this inside the Logitech SDK folder, so my path for dll files were: Assets/Logitech SDK/Plugins/x64… still got the same error. I hope someone could share their work if they have figured this out. I got the latest steeringwheel.dll files as well as mentioned in other forums, still no luck.
Thanks.
Got the same problem here, can’t get it to work, got all the dlls etc in the Plugins folder, got the Xinput there as well and still getting DLL not found for the logitechsteeringwheelengineswrapper.dll
then take the “LogitechSteeringWheelEnginesWrapper” file from it. also download xinput1_3 from google. After you have both files, head to Unity, Logitech SDK and paste these 2 files. Replace the LogitechSteeringWheelEnginesWrapper with the one that you have downloaded. this worked for me. now everything works fine.
Thanks for that, I found out the hard way that is the thing to do, surely you would think Logitech would, or someone at Unity would suggest to them, fix their asset so it is not using debug dll’s.