title: MSI Installer Fails Remotely - "A Newer Version" is already installed, even after uninstalling
body: <p>Rather bizarre behavior I've started having with our automated builds. I have a very simple, windows service .msi (built in Visual studio 2010) that is compiled on our central build/repo server, gets uploaded to our dev server, and is then remotely installed from the build/repo server (command-line via ssh using plink) on the dev server. </p>
  
  <p>This was working for a long time until recently the automated builds started failing 100% of the time. The verbose installation logs for the msi state that "A newer version of this product is already installed." I remoted into the dev server, checked the msi, and had <em>no problem</em> manually installing it myself on the server (via command-line and GUI). I then uninstalled the service from the "Programs &amp; Features" window, verified the files and entries were deleted, tried again to install it remotely from the build server, and got the exact same error again. The service just doesn't install remotely because it thinks a newer one is still installed (even though I already uninstalled it), but I can do it manually myself.</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>Adding some of the log text.</p>
  
  <pre><code>Action start 15:47:16: AppSearch.
  MSI (s) (B8:F0) [15:47:16:265]: Doing action: FindRelatedProducts
  Action ended 15:47:16: AppSearch. Return value 1.
  MSI (s) (B8:F0) [15:47:16:267]: Using cached product context: User non-assigned for product: BA4139E4B48F8264ABFF918A7B583A0B
  MSI (s) (B8:F0) [15:47:16:267]: Using cached product context: User non-assigned for product: BA4139E4B48F8264ABFF918A7B583A0B
  MSI (s) (B8:F0) [15:47:16:267]: Using cached product context: User non-assigned for product: BA4139E4B48F8264ABFF918A7B583A0B
  MSI (s) (B8:F0) [15:47:16:267]: Using cached product context: User non-assigned for product: BA4139E4B48F8264ABFF918A7B583A0B
  MSI (s) (B8:F0) [15:47:16:267]: Using cached product context: User non-assigned for product: BA4139E4B48F8264ABFF918A7B583A0B
  MSI (s) (B8:F0) [15:47:16:267]: Using cached product context: User non-assigned for product: BA4139E4B48F8264ABFF918A7B583A0B
  Action start 15:47:16: FindRelatedProducts.
  MSI (s) (B8:F0) [15:47:16:267]: PROPERTY CHANGE: Adding NEWERPRODUCTFOUND property. Its value is '{4E9314AB-F84B-4628-BAFF-19A8B785A3B0}'.
  MSI (s) (B8:F0) [15:47:16:268]: Doing action: ERRCA_CANCELNEWERVERSION
  Action ended 15:47:16: FindRelatedProducts. Return value 1.
  MSI (s) (B8:F0) [15:47:16:269]: Note: 1: 2235 2:  3: ExtendedType 4: SELECT `Action`,`Type`,`Source`,`Target`, NULL, `ExtendedType` FROM `CustomAction` WHERE `Action` = 'ERRCA_CANCELNEWERVERSION' 
  Action start 15:47:16: ERRCA_CANCELNEWERVERSION.
  MSI (s) (B8:F0) [15:47:16:269]: Product: Product.Services -- Unable to install because a newer version of this product is already installed.
  
  Unable to install because a newer version of this product is already installed.
  Action ended 15:47:16: ERRCA_CANCELNEWERVERSION. Return value 3.
  Action ended 15:47:16: INSTALL. Return value 3.
  </code></pre>