I have an ActiveX control that I use in a web page via the <OBJECT> tags.
I read an ini file which has the relevent ClassID and version number in it then dynamically create the page.
This way, I only need to change the details for my ActiveX components in one place, the ini file.

Recently I have been making lots of changes, making CAB files for each version that needs testing.

If I use Binary compatability the ClassID stays the same and only the version number changes.
If I use No compatability both change.
I dont know the effect of Project compatability.

Each of these has different effects on how the control is updated on the client PC.

Ideally I would want 1 file in the Downloaded Program Files directory that changed (uninstalled, reinstalled)
every time that I updated my control.

Unfortunately I am having difficulties.
Sometimes if I dont remove the earlier version manually, the new version doesnt get updated
and the old version stays in use.
Othertimes there seems to be some sort of conflict and only a blank square is displayed.

What is the best practice for this?
Which type of compatability should I use?
How do I do it so that several copies (different versions) of my files arent on the client PC at any one time
and the newest version automatically installs and runs?