Invalid ArcGISRuntime deployment, unable to load native dll

12-05-2016 03:04 AM
New Contributor III

I'm trying to create a test project to help me migrate from 10.2.7 to 100.0.0, I am getting the following exception when all I have is a MapView with a name.

Additional information: Invalid ArcGISRuntime deployment, unable to load native dll. Maybe a missing native dependency, checking with dependency walker may help resolve this issue. C:\Users\aaron.murphy\Documents\Visual Studio 2013\Projects\WpfApplication1\WpfApplication1\bin\Release\arcgisruntime100.0\client32\RuntimeCoreNet.dll

The dll exists, what's the issue guys?

14 Replies
New Contributor III

Haha... Figures... I had the prefer 32-bit checked... it generates a client 64 folder now.  Thanks!

0 Kudos
New Contributor III

Just to clarify for anyone watching this thread, I encountered three different problems.  The first provides this error:

Error initializing ArcGISRuntimeEnvironment. 
Unable to find ArcGISRuntime deployment folder. To create a deployment run the ArcGISRuntime Deployment Tool to create a folder called arcgisruntime100.0. Place this in the same folder as your exe, or set the ArcGISRuntimeEnvironment.InstallPath to point to a different location.
This deployment folder must contain sub-folders matching your process architecture. For developers you can also install the ArcGIS Runtime .Net SDK, which includes a deployment folder.‍

For me this indicated that the ArcGISRuntime100.0 folder was not in my deployment a.k.a not in the same directory as my exe.  I altered my .csproj file to make sure that those folders are copied from the output in bin/Release to the deployment directory with everything else.

The second issue provides this error:

Invalid ArcGISRuntime deployment, unable to load native dll. 
Maybe a missing native dependency, checking with dependency walker may help resolve this issue. ‍

Which means that I was missing the VC++ Redistributable.  There are several options for fixing that, you can include the appropriate DLLs, if this is within your licensing from Microsoft.  Or you can set up the appropriate VC++ runtime as a prerequisite in the installer, or you can just have the user download and install it from Microsoft.  Download Visual C++ Redistributable for Visual Studio 2015 from Official Microsoft Download Center 

The third issue was that my bin/Release folder only contained the client32 folder (and should have contained a client64).  I fixed this by unchecking the "Prefer 32-bit" box on the Build tab of the project properties.  After that when I selected the appropriate platform target, the correct folders were placed in the bin/Release folder.


New Contributor III

Another anecdote that might be helpful here. We had a developer using Visual Studio 2012 that ran into this error. I am running Visual Studio 2015, so I didn't get the error ... because the C++ redistributable libraries were already installed. Bottom line is if you are running a version of Visual Studio prior to 2015, you will most likely see this error, and the solution (as you stated above) is to install the restributable libraries.

Esri Frequent Contributor

The error should have been improved in more recent releases to point out the lack of the VCLibs missing.

0 Kudos
Occasional Contributor

How did you solve point 1? What did you change in youc csproj-file?