C++ and Rhino Development -> Avoid Crashing

There has been a way to “reload” C# plug-ins for a while now, and we’re using this method too, both for RHP and GHA files.

See How To Debug/Recompile Without Restarting Rhino
and New way to load a C# .net plugin

Briefly, it makes a separation of the commands that reside in the plug-ins, and the command implementations that reside in another assembly. This command implementation assembly is reloaded every time the command executes using Assembly.Load(File.ReadAllBytes(<path/to/implemetation-dll>)); This can be done multiple times, and the newly loaded assembly will overwrite or take precedence over the old assembly.