Repackaging Automation...
Dear Friends..
It's after 3 years of repackaging I realised that repackaging process may/need to be automated..
I don't know if it is possible at all. But still wanted to give a try..
Now what are the things that I'm planning to automate:
- cleanup.. I love an app that has minimum cleanup.. I had nightmares comparing the HKCR keys..
- conflict resolution.. ofcourse some package development tools have this feature.. but they are often misleading..
- testing.. after installing the package. check if everything is properly installed, under the right locations.. if the lockpermissions are applied
properly.. well you know how inconsistent the registry lock permissions are..
- uninstallation. if everything is getting properly uninstalled..shorcuts.. files.. folders.. appwiz.cpl entry..
well this is just a start. I would really love to hear comments and suggestions from you all experts here..
It's after 3 years of repackaging I realised that repackaging process may/need to be automated..
I don't know if it is possible at all. But still wanted to give a try..
Now what are the things that I'm planning to automate:
- cleanup.. I love an app that has minimum cleanup.. I had nightmares comparing the HKCR keys..
- conflict resolution.. ofcourse some package development tools have this feature.. but they are often misleading..
- testing.. after installing the package. check if everything is properly installed, under the right locations.. if the lockpermissions are applied
properly.. well you know how inconsistent the registry lock permissions are..
- uninstallation. if everything is getting properly uninstalled..shorcuts.. files.. folders.. appwiz.cpl entry..
well this is just a start. I would really love to hear comments and suggestions from you all experts here..
0 Comments
[ + ] Show comments
Answers (9)
Please log in to answer
Posted by:
brenthunter2005
18 years ago
Its very difficult to automate these, as it usually requires a human with experience to sift through the relevant components.
My opinion is that I wouldn't use the the LockPermissions table, as this overwrites the existing ACL. In many cases it is best practice to append to the ACL.
Also, the Wise QA component looks after the installation/uninstallation testing of your MSI package very well. It can ensure that all shortcuts are working correctly, and registry keys/files/etc are removed when the MSI package is removed. It is worth the extra £/$/etc.
My opinion is that I wouldn't use the the LockPermissions table, as this overwrites the existing ACL. In many cases it is best practice to append to the ACL.
Also, the Wise QA component looks after the installation/uninstallation testing of your MSI package very well. It can ensure that all shortcuts are working correctly, and registry keys/files/etc are removed when the MSI package is removed. It is worth the extra £/$/etc.
Posted by:
nvdpraveen
18 years ago
Thanks for the reply.
But I think this is one of those tasks which seems impossible but possible :-)
Just imagine how much time we repackagers spend on the routine tasks.. so why not automate them??
Also anyone reading this post.. please list any repackaing tools that you know, which can help in reducing manual effort..
But I think this is one of those tasks which seems impossible but possible :-)
Just imagine how much time we repackagers spend on the routine tasks.. so why not automate them??
Also anyone reading this post.. please list any repackaing tools that you know, which can help in reducing manual effort..
Posted by:
aogilmor
18 years ago
First, I will second what Brent Hunter says regarding the automated tools. Use the QA tool. A good setup capture configuration will go a long way towards eliminating the mundane tasks of setup capture. Like the cleanup you describe.
If you're good with VBscript and use Wise, you can do a lot with Wise Macros. I've used them to automate many things (inserting properties, custom actions, permissions, graphics and whatnot) , but the things you're describing are pretty complex. you'd be rewriting the Wise QA module!
If you're good with VBscript and use Wise, you can do a lot with Wise Macros. I've used them to automate many things (inserting properties, custom actions, permissions, graphics and whatnot) , but the things you're describing are pretty complex. you'd be rewriting the Wise QA module!
Posted by:
nvdpraveen
18 years ago
Posted by:
aogilmor
18 years ago
Hi Praveen, you go to Edit/Macros within Wise For Windows Installer, there is some documentation and context sensitive help therein. Basically you create .wbs files, very similar to vbs files but with some Windows Installer and Wise specific functionality built-in. Within the .wbs files are contained subs, or macros, which you can name, rename, copy, edit, run, etc. you can loop, or do whatever you can do with vbscript and act directly on the MSI tables so it is very powerful. Hope this helps -OG
Posted by:
t_claydon
18 years ago
Posted by:
nvdpraveen
17 years ago
I have searched some products and tools that can help us in repackaging process. But I haven't got a
chance to test them.
1. Wise QA module.
We can use this to simulate and test installation and uninstallation of packages.
Some other features include:
* Simulating installations, We can test patches and mst's too.
* Resource Access testing: We can identify the resources required by an application that cannot be
accessed due to issues like permission denied, missing files, busy files and corrupt files.
I'm sure we'll want this if everything works as expected in our testing.
2. Wise Macros.
Macros let us to turn repetitive manual tasks into part of SetupCapture.
We can use vbscript to write macros.
example:
After a SetupCapture, we would like to move all of the current-user settings into its own feature. By
default, SetupCapture places all of the current-user registry keys into its own component but not into
its own feature. By using the Macro editor, we can create a VBScript that takes the current .MSI, creates
a new CurrentUser feature, and moves its components into the newly created feature. To automatically
execute the macro when a capture completes, assign this macro to the SetupCapture event.
3. Windows Installer Development Tools.
(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/windows_installer_development_tools.asp)
Some of them:
Utility Description
Msidb.exe Imports and exports database tables and streams, merges databases, and applies transforms.
Msiinfo.exe Edits or displays summary information stream.
Msimerg.exe Merges one database into another.
Msitool.mak Makefile that can be used to make tools and custom actions.
Msitran.exe Generates a transform or applies a transform file to a database.
Msival2.exe Runs one or a suite of Internal Consistency Evaluators - ICEs.
Msizap.exe Removes Windows Installer information for a product or all products installed on a machine.
Wilogutl.exe Assists the analysis of log files from a Windows Installer installation and displays suggested solutions to errors.
Praveen
chance to test them.
1. Wise QA module.
We can use this to simulate and test installation and uninstallation of packages.
Some other features include:
* Simulating installations, We can test patches and mst's too.
* Resource Access testing: We can identify the resources required by an application that cannot be
accessed due to issues like permission denied, missing files, busy files and corrupt files.
I'm sure we'll want this if everything works as expected in our testing.
2. Wise Macros.
Macros let us to turn repetitive manual tasks into part of SetupCapture.
We can use vbscript to write macros.
example:
After a SetupCapture, we would like to move all of the current-user settings into its own feature. By
default, SetupCapture places all of the current-user registry keys into its own component but not into
its own feature. By using the Macro editor, we can create a VBScript that takes the current .MSI, creates
a new CurrentUser feature, and moves its components into the newly created feature. To automatically
execute the macro when a capture completes, assign this macro to the SetupCapture event.
3. Windows Installer Development Tools.
(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/windows_installer_development_tools.asp)
Some of them:
Utility Description
Msidb.exe Imports and exports database tables and streams, merges databases, and applies transforms.
Msiinfo.exe Edits or displays summary information stream.
Msimerg.exe Merges one database into another.
Msitool.mak Makefile that can be used to make tools and custom actions.
Msitran.exe Generates a transform or applies a transform file to a database.
Msival2.exe Runs one or a suite of Internal Consistency Evaluators - ICEs.
Msizap.exe Removes Windows Installer information for a product or all products installed on a machine.
Wilogutl.exe Assists the analysis of log files from a Windows Installer installation and displays suggested solutions to errors.
Praveen
Posted by:
Vision33r
17 years ago
I think in another 3-5 years most software will ship either in MSI or next gen dotnet packages and there's not much need for repackaging other than your usual install tailoring to create MSTs or response file scripts.
Majority of the time I repackage is working with custom or in-house software that didn't follow conventions.
Automation is not necessary a good thing. Something will break and you won't know what happened.
Keeping it simple and following guidelines are much better for IT pros.
Majority of the time I repackage is working with custom or in-house software that didn't follow conventions.
Automation is not necessary a good thing. Something will break and you won't know what happened.
Keeping it simple and following guidelines are much better for IT pros.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.