Select to view content in your preferred language

Persistent Warning RuntimeCoreNet200_3.dll of project output is not compatible with the project's target platform

355
5
06-13-2024 02:48 PM
Labels (2)
KTT_Mercury
New Contributor II

Hello - I'm needing an urgent help hope you can direct me to the right cause.

I've been trying to deploy a WPF project based on this example projec Query a feature layer (SQL) seen here

project https://developers.arcgis.com/net/query/tutorials/query-a-feature-layer-sql/

The exercise map is replace by a local map and a corresponding feature layer that returns a collection of points.
So far so good, until I added a Set Up project to deploy my target project (using resulted msi installer). 

I keep getting this warning below may it be x64 or x86 as my target platform:

Warnings_Persist.png

Warnings_Persist_for_this_1st_item_in-Framework-Node.png

Then I've picked up what seems to be fresh release of Arcgis Maps SDK .NET Template project: https://mediaspace.esri.com/media/t/1_2gx16j17
new-template.png

Iv'e looked at the depencies, all the framework item and packages are organized the same way except the .netcore item if of heigher version.

I did the same Set Up deployment procedure and got the same warnings.

BuiltOnArcgisMapSDKtemplate_SameCoreDllWarning.png

When I click on my program deployed short-cut, it doesn't load anything, nothing is fired. However the program name did show up in the control panel Programs & Features and uninstallable.

I check out Program File's instalation directory and I see no netcore dll component like the deployment page points out. https://developers.arcgis.com/net/license-and-deployment/deployment/


NoSignOfRuntimeCoreNetXXX_Y-dll_ObservedInProgramFileInstallationDirectory.png

Looking for RuntimeCoreNet200_4.dll, RuntimeCoreNet200_4.WPF.dll, runtimecore.dll but none were found down the list. What gives?

After several trials, it seems a possible conclusion is that Microsoft Setup Program is not suitable for an Arcgis Map SDK .net based project? Isn't that strange? Can you help me straighten this out if you have been successful with Microsoft Set Up project for WPF program.

Thanks

0 Kudos
5 Replies
KTT_Mercury
New Contributor II

This is my project file:
project-file.png

This is the Window Dialog open from within the Application Folder which I access thru the context menu of the SetUp Project, the 2nd project in my Visual Studio Solution by means of right-clicking on it:

ProjectOutDialog_OpenedFromApplicationFolderContextMenu.png

I had also chosen the other such as (Release Any CPU) from the dropdown instead of (Active) but it didn't change the outcome for the resulted msi.


These are all the .net packages and c++ distributable packages installed on my machine, I checked on each item in the deployment guide to make sure I got the prerequisites mentioned here :

https://developers.arcgis.com/net/license-and-deployment/deployment/

Dotnet Runtime.png

Cplusplus-Redistributable.png
This is the item i am less familiar with but I took screenshot just in case: the same "Project Output" item but i do a "properties" command to view its attributes.
8. Project Output File inside Application Folder of the Setup Project.png
What am I missing? This is so frustrating. I did choose "Release" for both target project and SetUp project in them VS solution and rebuild them.

Here is the msi:
msi-release.png
If you choose the same exercise please let me know if you can deploy it (the short cut loads the program and a map gets displayed in a window)


Thank you.

0 Kudos
dotMorten_esri
Esri Notable Contributor

Since I see the "runtimes" folder in the last screenshot, it looks like you compiled for AnyCPU (the DLLs you're looking for are likely in the runtimes folder).

Try setting Platform=x64 and RuntimeIdentifier=win-x64, and the runtimes folder will go away, and the native assemblies will be placed in the root folder.

0 Kudos
KTT_Mercury
New Contributor II

I'm looking for RuntimeIdentifier, is it a field on a dialog box, is it located in one of my screenshots? I can't find it. Can you please show me where it is?

Is Platform short of TargetPlatform or is it a reserved keyword in some other places not shown in my screenshots? One place I can go is my project's Properties Window poiting to Build tab and set target platform to x64. Please help me more by clarifying the place/windows/dialog-box (I think I will go to all applicable places, but I hope  your environment is like mine so you can tell me what window or dialog-box it is (located in main WPF project or SetUp project?)

Thanks!

0 Kudos
dotMorten_esri
Esri Notable Contributor

I don't think this is settable in the project dialogs. I never use those any longer either. Typically you do this in the publish settings instead, but since you're doing some kind of installer project I'm guessing you're not using that. 
Anyway you set it in the project file directly. Add the following to a project group>

<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<Platform>x64</Platform>

You could also create platform configurations and have it change based on it. ie
<RuntimeIdentifier Condition="'$(Platform)'=='x64'">win-x64</RuntimeIdentifier>
<RuntimeIdentifier Condition="'$(Platform)'=='x86'">win-x86</RuntimeIdentifier>

Again I don't quite know what kind of MSI project you're using since AFAIK they don't ship one out of the box with Visual Studio, so I don't know how it tries to compile the project.
If you use the newer App Packaging projects that creates MSIX it'll "just work".

0 Kudos
dotMorten_esri
Esri Notable Contributor

One more thing: If your installed app isn't launching (ie nothing is happening) it is likely crashing. Open up "Event Viewer" and got to Windows Logs -> Application. There should be some recent Error entries that should give you an indication of what went wrong (note there might be multiple entries for the same error, but they contain different details). Make sure content files etc from your project is included (most importantly the "arcgisruntime200.3\*" folder).

0 Kudos