MSI MoveFiles table question
I'm packaging an app (Oracle ADI) and have discovered that in my captured package, one of the files required for uninstalling the app does not get installed.
I could handle this easy enough in Wise Package Studio by adding a line of Wise Script to copy the file from point A to Point B, but I'm trying to learn how to do it right in the MSI (which I created myself, which is why I'm not using a transform).
Typically when we install a package to a target PC, we copy the installation files to %TEMP\[foldername], %TEMP% being C:\Documents and Settings\[user name]\Local Settings\Temp. I'm not sure, though, how to reference this folder in my MSI tables.
The file in question I'm trying to move is DeIsL1.isu. I've made changes to 3 of the MSI tables as outlined below:
Component table:
MoveFile table:
Property table:
Based on my log error when I ran the install ("Could not access network location %TEMP%\ADI7211"), I'm guessing I might need to make an addition to the Directory table, but I'm not positive how to do this, assuming I'm headed in the right direction with this.
I could handle this easy enough in Wise Package Studio by adding a line of Wise Script to copy the file from point A to Point B, but I'm trying to learn how to do it right in the MSI (which I created myself, which is why I'm not using a transform).
Typically when we install a package to a target PC, we copy the installation files to %TEMP\[foldername], %TEMP% being C:\Documents and Settings\[user name]\Local Settings\Temp. I'm not sure, though, how to reference this folder in my MSI tables.
The file in question I'm trying to move is DeIsL1.isu. I've made changes to 3 of the MSI tables as outlined below:
Component table:
Component ComponentID Directory Attributes Condition KeyPath
MSI_DeIsL1.isu [unique GUID] US 0 DeIsL1.isu
MoveFile table:
FileKey Component SourceName DestName SourceFolder DestFolder Options
MSI_DeIsL1.isu MSI_DeIsL1.isu DeIsL1.isu MSI_DeIsL1.isu Source_isu US 1
Property table:
Property Value
Dest_isu C:\OA_DOC\US
Source_isu %TEMP%\ADI
Based on my log error when I ran the install ("Could not access network location %TEMP%\ADI7211"), I'm guessing I might need to make an addition to the Directory table, but I'm not positive how to do this, assuming I'm headed in the right direction with this.
0 Comments
[ + ] Show comments
Answers (2)
Please log in to answer
Posted by:
anonymous_9363
14 years ago
This file is a record of the installation by the original installer and is referred to for uninstalling. Since you're using an MSI for both, I wouldn't bother with it.
In principle, though, you're right. You do need entries in the Directory table. Those entries need to form the entire tree, as far as the 'US' folder and the source folder. That is to say, you need an entry for 'OA_DOC' folder, then the 'US' folder which will have OA_DOC as its parent. Ditto for the 'ADI' folder branching from %TEMP%.
In principle, though, you're right. You do need entries in the Directory table. Those entries need to form the entire tree, as far as the 'US' folder and the source folder. That is to say, you need an entry for 'OA_DOC' folder, then the 'US' folder which will have OA_DOC as its parent. Ditto for the 'ADI' folder branching from %TEMP%.
Posted by:
pjgeutjens
14 years ago
Typically when we install a package to a target PC, we copy the installation files to %TEMP\[foldername]
Ron,
I have a sneaking suspicion you're using MSIs as a glorified Robocopy to get your installer files to the local machine...
Really not what MSIs are for, and if I'm mistaken, Ian is right, you won't need the .isu file once you've made your own MSI.
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.