Hello, and thanks for the quick response.
Hmmm, this information is quite interesting, and although it is better news than I was expecting, it does throw up a couple of questions.
Yes, the first assumption you state is true, the module solution is actually based inside the DesktopModules folder structure, to be honest I thought that was a requirement.
When it comes to the second assumption you give - at the moment, the build process just packages up the compiled module into the zip package, and it does not copy it directly into DNN bin folder - I thought this DLL copy was something that could only be done by the module registration process in DNN, so presumably this is another misconception of mine.
My MSBuild code is indeed based on material originally gleaned from the starter kit template, but that was long ago with lots of changes since, so I can't really justify starting all over again with a new MSBuild project, I need to get this current one to behave - presumably I have 'customized' something along the way that I shouldn't have! That's OK though, I'm relatively comfortable with MSBuild, I just need to clarify what it should definitely do.
Presumably then, it would be acceptable for my build process to still be packaging up the DLL inside the ZIP package for the initial install as it currently does, but also for the build process to provide the short-cut around the reinstallation process that I seek, by copying the DLL into DNN's bin folder aswell.
I reckon that in effect this is what I have been doing, by manually copying the DLL, but as long as you could clarify that automating the DLL update with MSBuild is a valid approach, I can eliminate this as a source of the problem, and move onto looking at why the changes I made caused the module load exceptions in the first place.
To summarize, I am going to try to experiment with getting MSBuild to: create the new DLL in the solution's bin folder; then package it up into the zip; and finally to copy the DLL into DNN's bin folder at the website root. When in debug mode this would result in the PDB file getting copied into these locations too, I suppose. If I ensure I have the same version of the DLL in all 3 places, presumably that will eliminate any possibility of pdb file mismatches etc that might be interfering with the debugging process.
Hopefully that makes sense! If you could just assure me I am on the right lines, that would be very helpful indeed.
Regards