title: Deploy new version of an existing ActiveX control
body: <p>I'm writing a .NET 4.0 based ActiveX control for IE7+. I have to manage an interface with a key-reader device. I followed some great tutorials and articles about "how to do" it, and currently is working well. </p>
  
  <p>My problems started when I wanted to deploy an other version of my control. </p>
  
  <p>I'm using VS2010 with setup deployment project and cabarc for the .CAB. The 1.0.0.0 version went well. Currently I would like to get the 1.0.2.0 version working, and it is doing its job well, but IE always prompting for an install. Again and again. </p>
  
  <p>What I did:</p>
  
  <p>1: Changed the AssemblyInfoVersion.cs to version 1.0.2.0</p>
  
  <p>2: Changed the .inf file according version to 1.0.2.0</p>
  
  <p>3: Changed the .msi version to 1.0.2 </p>
  
  <p>And I changed the OBJECT tag in the HTML page to #version=1,0,2,0</p>
  
  <p>So far so fine. It is installed! I can see it under the "Uninstall Programs", the version of the control is 1,0,2 ! Great, but the IE still wants me to donwload and install it every time when I open the page.</p>
  
  <p>I saw a thread connected with Excel: <a href="https://stackoverflow.com/questions/1506858/how-to-get-com-server-for-excel-written-in-vb-net-installed-and-registered-in-au">How to get COM Server for Excel written in VB.NET installed and registered in Automation Servers list?</a> </p>
  
  <p>And I got usefull information about I should change something in the registry. I did some search there, and I fould my classId under :
  HKLM\SOFTWARE\Wow6432Node\Classes\CLSID{GUID} </p>
  
  <p>I have here the following subkeys:
  InstalledVersion
  Implemented Categories
  InprocServer32
  ProgId</p>
  
  <p>I was happy, because I saw, that in the InstalledVersion part the version still 1,0,1,0. I changed it to 1,0,2,0 and... it did not worked. I serched through the registry, now everywhere the InstalledVersion is 1,0,2,0. The .dll version is 1,0,2,0. The installed control's version is 1,0,2. Under the InprocServer32 I have all three 1,0,0,0 ; 1,0,1,0; 1,0,2,0 versions. And of course in the HTML code the version is also 1,0,2,0. </p>
  
  <p><em>(My machine is 64 bit Win7, IE9)</em></p>
  
  <p>Could anybody help in this, what I missed?</p>
  
  <p><strong>Other problem with this whole scenario:</strong> After the version increase by the first install my dev machine is rebooting without any question. Do you have any idea what kind of settings can make this behavior?</p>
  
  <p><strong>UPDATE:</strong></p>
  
  <p>The problem solved. I'm kind of blind or just a bit tired because of this. 
  But the problem is may important for the future:</p>
  
  <p>First a summary about the issue:
  After a new version was deployed (installed well on client) the IE was always propting for install the version.</p>
  
  <p>The problem source is in the registry. You should have the rigth version number in the InstalledVersion(Default) registry key.</p>
  
  <p>I had a very special case here (and I don't know the cause yet), but I had two entries with (Default) under the SubKey InstalledVersion. The firs one was empty, the second one contained the rigth value. I could not delete the first one, but the second one only. After I changed the first (Default) everything worked find!</p>