ThinkGeo.com    |     Documentation    |     Premium Support

FDOExtension.dll Throws an exception "Mixed Mode Assmblycannot be loaded"

Recently we upgraded our application to Visual Studio 2010 and .Net framework 4.0.  Since that time, I have not been able to open map files in different formats such as .ADF, .MDB, .TNF(ADRG), and .DT1(DTED).  Anytime, I attempt to open one of these files the GdalRasterLayer fails and throws an exception.  The exception is "Exception has been thrown by the target of an invocation".  The inner message of the exception is "Mixed mode assembly is built against version 'v2.0.50727' of the runtime and cannot  be loaded in the 4.0 runtime without additional configuration information." 


Can anyone help me by telling me how to provide the additional configuration information?  Is there a way to rebuild the DLL's so that they are not "Mixed mode assembly"?   I believe the DLL in question is the FdoExtension.dll since the application is not complaining for any other MapSuite calls from the DesktopEdition.Dll or the MapSuiteCore.dll".  I do not know how to tell if there are other dependent Dlls that the FdoExtension.dll might be loading.


Thanks for any help you can give me on this.


Richard


 


 



I seem to have solved this problem by updating the app.config file for the application exe.  I added the following:


From the Solution Explorer, select your project->right click->add->new item


Select Application Configuration, highlight everything and paste this (from earlier or perhaps other posts)



<?xml version="1.0" encoding="utf-8" ?>

<configuration>

  <startup useLegacyV2RuntimeActivationPolicy="true">

    <supportedRuntime version="v4.0"/>

    <requiredRuntime version="v4.0.20506" />

  </startup>

</configuration>



I believe the "useLegacyV2Runtime" is the key to the problem.  There a a number of blog posts on this problem so you should be  able to locate additional information by a google search on the "mixed mode assembly" error.


Richard



"<"xml version="1.0" encoding="utf-8" ?>

"<"configuration>

"<"startup useLegacyV2RuntimeActivationPolicy="true">

"<"supportedRuntime version="v4.0"/>

"<"requiredRuntime version="v4.0.20506" />

"<"/startup>

"<"/configuration>


Sorry it appears the previous post had an issue with XML tags.  You will need to remove the quotes from the initial "<" in the XML.


Richard


 



Thanks for the post Richard and sharing your solution!