Importing model file throws newer runtime used

I'm pretty sure you all seen at least once this issue when you use the Import-AxModel cmdlet command: "Could not load file or assembly axmodel or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime cand cannot be loaded."

The fix is quite simple and is properly described on the Technet page (the cause of the issue as well as the  actions you need to take): https://technet.microsoft.com/en-us/library/jj152919.aspx.

This is a summary of what to do:

 a) Create a configuration file for AXUtil.exe named AXUtil.exe.config (the default location for it would be C:\Program Files\Microsoft Dynamics AX\60\Server\MicrosoftDynamicsAX\bin).
 b) Place the following content in it and save it in the same location as the exe:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
  <startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0.30319" /> 
<supportedRuntime version="v3.5" /> 
<supportedRuntime version="v2.0.50727"/>
  </startup> 
</configuration> 
 
Of course, another comment here would be that the model files should be exported by the same AxUtil.exe version, otherwise, you can get the above error for different reasons than the ones listed in the link above (and the fix below). You would be able to tell this by running the AxUtil.exe import command (from the default path mentioned below); if the versions are different you can get something like: "ERROR: The model file [filename] is from a newer version of Microsoft Dynamics AX (version 6.3.164.0) and cannot be installed.". The fix in this case would be something else.


What I used to do in the past was to copy the three AxUtil* files from the machine I exported from to the machine I'm importing. However, I never trespassed versions, only when some KB was installed which bumped the version some minor/builds higher.

 

No comments:

Post a Comment