title: Why is the Uninstall method not being called during installation?
body: <p>I am aware that there are <a href="https://stackoverflow.com/questions/667261/why-is-my-uninstall-method-not-called-from-the-msi">other</a> questions that are <a href="https://stackoverflow.com/questions/4052631/why-is-my-uninstall-method-not-being-called">similar</a> but either they are not answered properly or the answer isn't fixing my problem.</p>
  
  <p>My program has a main framework as well as various plugins for the framework. The plugins are managed via an XML file which contains the information needed by the framework to dynamically load the plugin.</p>
  
  <p>I have a common <code>Installer</code> class which is used to handle the custom actions during installation for the Plugins.</p>
  
  <p>During installation it needs to load the XML file and add a new node in it listing the information needed to load the plugin.</p>
  
  <p>During uninstallation it just needs to remove that same node from the XML file.</p>
  
  <p>Installation is working fine. When I attempt to uninstall the Plugin, the <code>Installer</code>'s Uninstall method doesn't even get called.</p>
  
  <p>If any more information is needed, please don't hesitate to ask.</p>