Enable an mst to install uncompressed files
I already know I'm going to explain this badly, but here goes:
I am creating an iTunes 9.2.1 package.
This involves creating a transform for iTunes.msi and, amongst other things, adding 2 x iTunesPrefs.xml to the package.
Normally, I would add the files within Windows Installer Editor, then let it generate a cab for the transform.
I decided to try and add the files to the package without WFWI generating a cab.
I tested dragging a file in as I might normally, but this time before saving the mst, I edited the "Attributes" field of the file in the File table from 16384 to 8192, and changed the sequence to 1 (anything below the highest). I then placed the file in the folder alongside the transform and msi. I compiled the mst which did not generate a cab, and the file was installed successfully on the test computer.
Now because I have 2 x different files (different contents) both called iTunesPrefs.xml installing to different folders, I can't place both of them in the folder with the mst & msi. I then thought I could manipulate the Directory table to place the files in source folders not dissimilar to those generated when creating an admin install point, but just for these files. I have been unsuccessful.
What do I need to do to make the source directory for the uncompressed files not the same as the msi / mst directory?
Many thanks,
Darren.
Comments
Darren,
Send my your email via the PM function and I will send you my doc file on how to generate the iTunesPrefs XML files using custom actions so you have no need to generate cabs or try to install files via an MST.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Will do, thanks.
I would actually still love to know how to add uncompressed files in a folder structure to an MST delivery though. Although, to be honest, how often do you need to deliver two different files with identical names? :o)
Darren Collins
Applications Packaging and Deployment for the ICT Support Team,
Oxford University, UK.
Keeping a few files outside the MSI:
page, click the Add button to add a new media entry. Select
'Uncompressed external files' from the Compression Option drop-down
list. Click the Add button by the 'Include Feature/Components' section
to select the Feature(s) or Component(s) that you want to leave external
to your .MSI. As long as you leave the default media to compress files
inside the .MSI, and you have All Features/Components selected, any
component or feature that is not listed will be compressed inside the
.MSI.
The same approach can be used with an MST if you add files using the transform.
You end up with the transform containing additional file table entries with associated sequence numbers, so you can then ensure that the media table refers to these sequence numbers as external uncompressed files. Hence your MST will also contain extra entries in the media table, and most probably additional components, additional entries in the FeatureComponents table and maybe additions to the directory table, MSIFileHash table and so on.
I would normally do a trial run on an existing MSI (set to read only) using Wise, then create the production transform using ORCA, as this ensures that only the necessary extras are in the transform and the additional Wise tables are left out.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Keeping a few files outside the MSI:
Cheers for putting me on the right track.
You can't use the Media page when editing a transform from Wise Installer Editor, but now that I've looked into it a bit, I understand why.
I've written a fairly short article about this, which if accepted should be on this URL:
http://www.symantec.com/connect/articles/adding-files-package-uncompressed-external-msi-or-mst
Thanks again, Darren.
Darren Collins
Applications Packaging and Deployment for the ICT Support Team,
Oxford University, UK.
Wise Script Solution
I had faced the same problem, then added a wise script to solve this
CONDITION "ONE" = True then
Install file
END
CONDITION "TWO" = True then
Install file
END
And created a custom action which calls this wise script. I know you mean a MSI table solution but this is the easiest solution i found :-)
Thanks and regards
Paachu
How convoluted!
Just in case you are unaware, you can use a Wisescript as a custom action directly - you do not need to use a custom action to call a wisescript.
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Would you like to reply?
Login or Register to post your comment.