V
Viviana Vc
Hi all,
I have an application that is already having implemented it's own
'update' feature. This means once it is installed it checks by itself
for the updates and in case applies them. An update might mean: adding
new files, removing old files, etc.
Now I have to create a MSI installer for my application and by reading
about the technology I noticed a scenario where I could get into
troubles:
- let's say I have my first msi which besdies others installs a
component with 3 files: a.bmp, b.bmp and c.bmp
- after a while the requirement changes so instead of a.bmp we will have
to have a d.bmp
- so via my application update feature the a.bmp is removed and a new
d.bmp is added
- now the user uninstalls my app which means b.bmp and c.bmp will be
removed, but the d.bmp stays as the uninstaller is not aware of that
file
- now my new msi installer (the newer version), because of the above
requirement, has a component containing the b.bmp, c.bmp and d.bmp files
and the d.bmp is the key path for the component
- now the above user wants to install this new version using this new
msi installer. This will fail because the installler checks for the
component key path and as d.bmp remained on the harddisk of the user, it
will be detected and the component won't be installed so from the
installation directory the b.bmp and c.bmp files will be missing.
Is my assumption correct?
If yes, is there a way to prevent such failures?
Thank you in advance,
Viv
I have an application that is already having implemented it's own
'update' feature. This means once it is installed it checks by itself
for the updates and in case applies them. An update might mean: adding
new files, removing old files, etc.
Now I have to create a MSI installer for my application and by reading
about the technology I noticed a scenario where I could get into
troubles:
- let's say I have my first msi which besdies others installs a
component with 3 files: a.bmp, b.bmp and c.bmp
- after a while the requirement changes so instead of a.bmp we will have
to have a d.bmp
- so via my application update feature the a.bmp is removed and a new
d.bmp is added
- now the user uninstalls my app which means b.bmp and c.bmp will be
removed, but the d.bmp stays as the uninstaller is not aware of that
file
- now my new msi installer (the newer version), because of the above
requirement, has a component containing the b.bmp, c.bmp and d.bmp files
and the d.bmp is the key path for the component
- now the above user wants to install this new version using this new
msi installer. This will fail because the installler checks for the
component key path and as d.bmp remained on the harddisk of the user, it
will be detected and the component won't be installed so from the
installation directory the b.bmp and c.bmp files will be missing.
Is my assumption correct?
If yes, is there a way to prevent such failures?
Thank you in advance,
Viv