Revit API Forum
Welcome to Autodesk’s Revit API Forums. Share your knowledge, ask questions, and explore popular Revit API topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Reference External DLL Conflicts // ILMerge // Fody // etc.

2 REPLIES 2
Reply
Message 1 of 3
kraftwerk15
903 Views, 2 Replies

Reference External DLL Conflicts // ILMerge // Fody // etc.

This was more of a question of others workflows when it comes to referencing external dlls. I'm currently having an issue of another addin that is referencing an older version of a 3rd-party library (its CTC's tool that are referencing an old version of MahApps.Metro if you were curious).

 

I was looking through some of Jeremy's post and came across ILMerge. I am able to run the merge through my solution now to merge the reference assemblies. Right now I am at the point of just merging these in the current "Revit Addin" solution, so there is now a Merged_References.dll and all of the individual references .dlls. But this makes me start to think about referencing this new "Solution_References.dll" file back in to my active solution. Do other developers usually split the references out to another Solution, build the "Solution_References.dll" file and then replace that new, combined dll with the original references back in the "Revit Addin" Solution.

 

Or is there a different method or something less complex to achieve using multiple versions of the 3rd-party library in Revit? Or is the real solution to merge everything and start to split out in to different solutions? Thanks

 

 

2 REPLIES 2
Message 2 of 3
jeremytammik
in reply to: kraftwerk15

Just looking at the title of your new thread, I was saying things to myself like 'this topic is turning into a very frequently asked question recently', etc.

 

I am very glad to see that you have already researched in depth and implemented a solution that works.

 

You appear to have made significant progress since the comment you shared yesterday.

 

I will be very glad if other experienced developers pitch in and share their experiences in this area as well.

 

Regardless of whether they do or not, I am sure that just the description of where you are currently at is of great value to others who run into this kind of challenge.

 

I am very much looking forward to the continuation of this discussion.

 

Thank you for raising it.

 

Cheers,

 

Jeremy

 



Jeremy Tammik
Developer Technical Services
Autodesk Developer Network, ADN Open
The Building Coder

Message 3 of 3
cwaluga
in reply to: jeremytammik

I use ILMerge to bundle external libraries including their references into one versioned DLL each, for instance ThirdPartyStuff_1.76.dll contains version 1.76 of „third party stuff“ including possible dependencies. This can be used without problems alongside other versions different plugins may use, at least unless somebody coincidentally names another version or DLL in the same way (which is highly unlikely).

 

side note: it is unbelievable that in 2020, after years of progress made in the .Net environment, dll hell is still an issue.

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Rail Community


Autodesk Design & Make Report