I have developed an AddIn for ArcMap with several tools, menus and dockable windows. It's coded in VB.net using Visual Studio. The AddIn references a separate VB.net project that includes lots of routines that I have written to manipulate feature classes, rasters etc. It's a general purpose GIS utility routine that references the ArcGIS 10 .Net wrapper DLLs. (It also references GDAL but I don't think this is relevant.)
Everything works well on my development machine. The project builds and debugs just fine. When I look inside the AddIn file, I can see my reference DLL is there. But the tools fails on any deployment computer with JIT related errors that suggest that my reference DLL cannot be found.
I have read the ESRI documentation and it says not to use AddIns when assemblies "need to be registered". Two questions:
1) Do I need to register my referenced DLL? I ask this because I am also using this same referenced DLL in several ArcObjects extension projects. I am unsure if it needs to be referenced in this deployment scenario either.
2) If the answer to #1 is "yes" then I guess I need to abandon the AddIn and convert my code to registered ArcMap extension, right? If the answer to #1 is no, how should my code find or load the reference DLL at runtime? I've seen some stuff about "Assembly.Load()" but it looks complex.
Thanks!