Failed to locate Framework DLL error.

I’ve recently switched to Xojo 2016 Release 3, which I’m using on my MacBook, and I’ve just encountered a problem running an app on Windows (in this particular case, Windows 7 64-bit) that ran perfectly fine when compiled with an older version of Xojo. The error message is “Failed to locate Framework DLL” and no matter what I try - and I have checked through various forum posts here and tried everything suggested from making sure the app has the right permissions, moving it to various places on the drive - I cannot get my app to start. The folder structure my app resides in is as follows:

App.exe
App Libs
App Resources

The App Libs directory contains the following files:

vcruntime140.dll
vccorlib140.dll
msvcp140.dll
XojoGUIFramework32.dll
XML.dll
SSLSocket.dll
Internet Encodings.dll
Crypto.dll

My app was compiled for the x86 32-bit architecture so I presume when it starts up it is trying to find XojoGUIFramework32.dll? Why can’t my app find the DLL it’s after?!

Recently I had the same issue here https://forum.xojo.com/35836-failed-to-locate-framework-dll-in-centennial

The solution was to place XojoGUIFramework32.dll next to the exe. Strange, but it worked.

Did you install Visual Studio runtime?
(comes in Extras folder with Xojo)

@Michel Bujardet Thank you for your reply. I tried this before posting here, but I’m still getting the same error message.

@Christian Schmitz I tried to install the Visual C++ Redistributable For Visual Studio 2015 as I was getting an error message about a missing api-ms-win-crt-runtime-l1-1-0.dll file initially, but that failed to install properly, so I copied the DLL’s into the same folder as my app executable instead, which resolved the missing api-ms-win-crt-runtime-l1-1-0.dll issue, but did not resolve the framework issue.

Maybe the failed installation is the problem?
You tried it again?
Installed all windows updates?

Why would the failed installation of the Visual C++ Redistributable For Visual Studio 2015 be the problem? Isn’t the “Failed to locate Framework DLL” error a Xojo error?

Okay, after successfully getting Visual C++ Redistributable For Visual Studio 2015 to install correctly my app now starts. It appears as though Service Pack 1 for Windows 7 is required to install the redistributable successfully. This raises a worrying point now, though, in that if I have clients that are not able to update their Windows machines, and they’re also not able to install the redistributable correctly, then the “solution” of copying the DLL files to the same directory as my app’s executable will not work for them and they won’t be able to run my app.

Gary,

App-Local C Runtime Deployment (copying the DLL files to the same directory as app’s executable) will work guaranteed by Microsoft. Maybe, maybe you might have miss a file… just guessing.

Here are 2 links from MSDN blog, the Mar 2015 is quite long but very informative from all the Q & Microsoft’s A:

https://blogs.msdn.microsoft.com/vcblog/2016/04/18/c-runtime-deployment-why-choosing-applocal/

https://blogs.msdn.microsoft.com/vcblog/2015/03/03/introducing-the-universal-crt/

If you have many clients with older configurations, maybe 2015R4.1 is preferable.

Hmm. I’m pretty sure I copied all the 41 DLL’s from the /Extras/Windows Runtime/Files/x64 directory. I guess I could have missed one, though… especially if Microsoft is saying it’s “guaranteed” to work… I’ll try again. :slight_smile:

Yes, that might be an option depending on how many clients this potentially affects…

In case if your app is 32-bit, you need the 32-bit runtime files even though you running on a x64 Windows.

Yes
Thats why we publish system requirements for using the IDE & for the applications that Xojo creates

It’s possible that this is the mistake I made. I will check.

[quote=294465:@Norman Palardy]Yes
Thats why we publish system requirements for using the IDE & for the applications that Xojo creates[/quote]

Thank you for this, Norman. I’ve only just moved to 2016 Release 3 and I just assumed (always a bad thing to do) that this version would build apps with the same Windows compatibility that my older IDE does - now I see that to run apps built with 2016 Release 3 my clients will need Windows 7 Service Pack 1 as a minimum.