Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Terry Clancy 204 posts 944 karma points
    Mar 06, 2017 @ 22:47
    Terry Clancy
    0

    DLL Hell Error with fresh install of uCommerce with Umbraco Courier

    Dear Courier Folk,

    ( Note that this has also been posted to http://eureka.ucommerce.net/#!/question/2149/DLL-Hell-Error-with-fresh-install-of-uCommerce-with-Umbraco-Courier#top )

    I am trying to complete an installation of Umbraco version 7.5.10 assembly: 1.0.6261.14290 with Umbraco Courier 3.0.5 and uCommerce 7.5.0.17040.

    It appears that uCommerce requires FluentNHibernate.dll 2.0.1.0 & NHibernate.dll 4.0.0.4000 and places both these files in the bin/ucommerce folder.

    It also appears that Umbraco Courier requires FluentNHibernate.dll 1.4.0.0 and NHibernate.dll 3.4.1.4000.

    This conflict results in errors such as

    ………. Could not load all types from "Umbraco.Courier.Persistence.V7.NHibernate, Version=1.3.50.17068, Culture=neutral, PublicKeyToken=null" due to LoaderExceptions, skipping:

    ………. . System.IO.FileLoadException: Could not load file or assembly 'FluentNHibernate, Version=1.4.0.0, Culture=neutral, PublicKeyToken=8aa435e3cb308880' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

    In attempting to fix this using the technique described at http://maffrigby.com/using-different-versions-of-the-same-dll-in-a-project/ I have placed a copy of FluentNHibernate.dll 1.4.0.0 both in /bin and in the folder \AppData\TTDLLStore\FluentNHibernate\1400 and a copy of NHibernate.dll 3.4.1.4000 both in /bin and in folder \AppData\TTDLLStore\NHibernate\3414000 and then set a VS Project “Reference” to each of these files referencing the locations in \AppData\TTDLL_Store.......

    However, as or immediately after, setting the References (before re-compiling or running) the following occurred which I do not understand:

    (1) After setting the Reference, If I look at the Reference Properties the “Path” for these two references is not to \AppData\TTDLL_Store....... as I would expect but they are as follows:

    a. For FluentNHibernate: D:\Clancy\ATeraTastic\Dev\TeraTastic12\TeraTastic\AppData\TEMP\uCommerceAppsAssemblyShadowCopy\CBD7D79B268E90FABDB51E1D723E73EA\FluentNHibernate.dll

    b. For NHibernate: D:\Clancy\ATeraTastic\Dev\TeraTastic12\TeraTastic\AppData\TEMP\uCommerceAppsAssemblyShadowCopy\1288316830C34B11D342F74AF567C561\NHibernate.dll

    (2) Both these DLLs in the bin folder is overwritten with the (newer) uCommerce versions

    I note that the Reference Path includes uCommerceAppsAssemblyShadowCopy.

    So my questions are

    (1) What is “uCommerceAppsAssemblyShadowCopy” and how does it work ?

    (2) Why does by older (Courier) version of these DLLs in /bin keep getting overwritten with the newer (uCommerce) versions ?

    (3) Any suggestions as to how to make these DLLs of different version numbers work side by side would be appreciated.

    Any help much appreciated.

    Thanks

    Terry Clancy

    ClanceZ

  • Søren Spelling Lund 1797 posts 2786 karma points
    Mar 08, 2017 @ 10:00
  • This forum is in read-only mode while we transition to the new forum.

    You can continue this topic on the new forum by tapping the "Continue discussion" link below.

Please Sign in or register to post replies