MW5 is a desktop GIS which is extendable using the plug-in architecture. It is using the MapWinGIS mapping control and is created from scratch in 2015 using new technologies like MEF and Dependency Injection making it small in size, robust and fast.
A DirectoryCatalog was previously returned
by PluginManager::GetPluginCatalog() without
checking for any errors. The DirectoryCatalog
constructor actually loads each of the DLLs to
query their interfaces to determine which are
actually MEF Plugins. If one of those DLLs is
missing a DLL. The population of the DirectoryCatalog::Parts
collection fails and in turn no plugins are available
to MapWindow5. The constructor actually never throws an
exception despite an inner exception being thrown. The
change that is committed here provides an indication to
the analyst that an error has occured and provides general
recommendations on resolution of the problem.