M
Mark Kerns
I'm using MSI 2.0 on Win2000 and need feedback on how to undo a patch. I
know there's no native way to do it but I'd like to improvise as follows
(alternatives welcome). I want to send my customers two ".msp" files for
each patch, one to patch the main app itself and another ".msp" to undo
(downgrade) that patch if later required (a patch of a patch basically).
Instead of the overhead of two ".msp" files however, making a download of
both files twice as expensive, I want to send the main ".msp" file itself
and create the undo ".msp" at the client site (I'll automate the process,
creating the undo ".msp" file just before running the main ".msp" file). The
question is, how exactly do I create the "undo.msp" file at the client site?
I'll ship the following:
1) Main ".msp" patch file
2) ".pcp" file to create the undo ".msp" file
3) ".msi" file corresponding to the undo ".msp" file that will be created
4) "msimsp.exe" and "Patchwiz.dll" from MS (can I legally ship this BTW)?
I can then run "msimsp.exe" in 4 above just before installing the main patch
(passing the ".pcp" file in 2 above). To do this however, I know that two
tables in the ".pcp" file must point to the appropriate ".msi" files but
where do I locate the *target* ".msi" file on the client site (or do I need
to ship this too). Can someone shed some light on the precise technical
details to pull this off if possible (the latter question in particular
since I think I have most of the details now). BTW, I'm an experienced C++
developer so feel free to get technical. Thanks.
know there's no native way to do it but I'd like to improvise as follows
(alternatives welcome). I want to send my customers two ".msp" files for
each patch, one to patch the main app itself and another ".msp" to undo
(downgrade) that patch if later required (a patch of a patch basically).
Instead of the overhead of two ".msp" files however, making a download of
both files twice as expensive, I want to send the main ".msp" file itself
and create the undo ".msp" at the client site (I'll automate the process,
creating the undo ".msp" file just before running the main ".msp" file). The
question is, how exactly do I create the "undo.msp" file at the client site?
I'll ship the following:
1) Main ".msp" patch file
2) ".pcp" file to create the undo ".msp" file
3) ".msi" file corresponding to the undo ".msp" file that will be created
4) "msimsp.exe" and "Patchwiz.dll" from MS (can I legally ship this BTW)?
I can then run "msimsp.exe" in 4 above just before installing the main patch
(passing the ".pcp" file in 2 above). To do this however, I know that two
tables in the ".pcp" file must point to the appropriate ".msi" files but
where do I locate the *target* ".msi" file on the client site (or do I need
to ship this too). Can someone shed some light on the precise technical
details to pull this off if possible (the latter question in particular
since I think I have most of the details now). BTW, I'm an experienced C++
developer so feel free to get technical. Thanks.