Uisample.msi Modifying
Specification
2004/03/10 |
#CCCCFF |
purple |
column name |
#CCFFCC |
green |
condition |
#FFFFCC |
yellow |
new value |
#FFCCCC |
red |
description |
*: |
white |
no changing of the original content. |
|
|
1. add "Directory" Table |
Directory |
Directory Parent |
DefaultDir |
TARGETDIR |
* |
SourceDir |
ProgramFilesFolder |
TARGETDIR |
.:PROGRA~1|program files |
INSTALLDIR |
TempFolder |
. |
TempFolder |
TARGETDIR |
.:Temp |
|
2. add "Component" Table |
Component |
ComponentId |
Directory |
Attributes |
Condition |
KeyPath |
AllOtherFiles |
{31CCF52F-FCB3-4239-9D82-05CDA204867A} |
INSTALLDIR |
8 |
* |
* |
|
3. add "File" Table |
File |
Component |
FileName |
FileSize |
Version |
Language |
Attribute |
Sequence |
place.txt |
AllOtherFiles |
place.txt |
18 |
* |
* |
16384 |
1 |
|
4. add "Media"
Table |
DiskID |
LastSequence |
DiskPrompt |
Cabinet |
VolumeLabel |
Source |
1 |
1 |
* |
#Data1.cab |
* |
* |
|
5. add "Feature" Table |
Feature |
Feature Parent |
Title |
Description |
Display |
Level |
Directory |
Attributes |
NewFeature1 |
|
NewFeature1 |
* |
2 |
1 |
INSTALLDIR |
0 |
|
6. add "FeatureComponents"
Table |
Feature |
Component |
NewFeature1 |
AllOtherFiles |
|
7. insert into "Property"
Table |
Property |
Value |
Manufacturer |
SUN Microsystems |
ProductCode |
{3D11E9FC-142F-4945-8010-861EAA24850F} |
ProductName |
Default |
ProductVersion |
1.00.0000 |
UpgradeCode |
{20AC1669-B481-4CAD-82AF-2CD00005F304} |
JnlpFileName |
ok |
UninstallInfo |
ok |
ShortCut |
yes |
Locale |
en |
Association |
yes |
ARPCONTACT |
http://www.sun.com/ |
ARPURLINFOABOUT |
http://www.sun.com/ |
ARPURLUPDATEINFO |
http://www.sun.com/ |
ARPCOMMENTS |
Generated by Java MSI Package Generator |
CacheType |
user |
|
8. modify "Property"
Table |
Property |
Value |
ARPHELPLINK |
http://www.sun.com/ |
ComponentDownload |
http://www.sun.com/ |
|
9. add "CustomAction"
Table |
Action |
Type |
Source |
Target |
CustomInstallAction |
1 |
CustomDLL |
InstallAction |
CustomUninstallAction |
1 |
CustomDLL |
UninstallAction |
|
10. insert into "InstallExecuteSequence"
Table |
Action |
Condition |
Sequence |
CustomInstallAction |
NOT Installed |
6650 |
CustomUninstallAction |
Installed |
6651 |
|
11. insert into "Binary"
Table |
Name |
Data |
CustomDLL |
the dll we
provide (msiactions.dll) |
JarPack |
anything |
|
12. modify "Control"
Table |
Dialog |
Control |
Type |
X |
Y |
Width |
Height |
Attributes |
Property |
Text |
MaintenanceTypeDlg |
ChangeLabel |
* |
* |
* |
* |
* |
0 |
* |
* |
MaintenanceTypeDlg |
ChangeButton |
* |
* |
* |
* |
* |
5767168 |
* |
* |
MaintenanceTypeDlg |
ChangeText |
* |
* |
* |
* |
* |
0 |
* |
* |
MaintenanceTypeDlg |
RepairLabel |
* |
* |
* |
* |
* |
0 |
* |
* |
MaintenanceTypeDlg |
RepairButton |
* |
* |
* |
* |
* |
5767168 |
* |
* |
MaintenanceTypeDlg |
RepairText |
* |
* |
* |
* |
* |
0 |
* |
* |
MaintenanceTypeDlg |
RemoveButton |
* |
* |
65 |
* |
* |
* |
* |
* |
MaintenanceTypeDlg |
RemoveLabel |
* |
* |
65 |
* |
* |
* |
* |
* |
MaintenanceTypeDlg |
RemoveText |
* |
* |
78 |
* |
* |
* |
* |
* |
MaintenanceTypeDlg |
Title |
* |
* |
* |
* |
* |
* |
* |
[DlgTitleFont]Remove
installation |
MaintenanceTypeDlg |
Description |
* |
* |
* |
* |
* |
196608 |
* |
* |
VerifyReadyDlg |
Description |
* |
* |
* |
* |
* |
* |
* |
The
[Wizard] is ready to begin the installation |
VerifyReadyDlg |
Text |
* |
* |
* |
* |
* |
* |
* |
Click
Install to begin the installation. Click Cancel to exit the wizard. |
MaintenanceWelcomeDlg |
Description |
* |
* |
* |
* |
* |
* |
* |
The
[Wizard] will allow you to remove [ProductName] from your computer.
Click Next to continue or Cancel to exit the [Wizard]. |
MaintenanceWelcomeDlg |
Next |
* |
* |
* |
* |
* |
* |
* |
[ButtonText_Remove] |
VerifyRemoveDlg |
Text |
* |
* |
* |
* |
* |
* |
* |
Click
Remove to remove [ProductName] from your computer. Click Cancel
to exit the wizard. |
VerifyRemoveDlg |
Title |
* |
* |
* |
* |
* |
* |
* |
{\DlgFontBold8}Remove [ProductName] |
WelcomeDlg |
Next |
* |
* |
* |
* |
* |
* |
* |
SunButton |
WelcomeDlg |
Description |
* |
* |
* |
* |
* |
* |
* |
WelcomeDescription |
|
13. modify "Dialog"
Table |
Dialog |
HCentering |
VCentering |
Width |
Height |
Attributes |
Title |
Control Fist |
Contrl Default |
MaintenanceTypeDlg |
* |
* |
* |
* |
* |
* |
* |
RemoveButton |
|
14. modify "ControlEvent"
Table |
Dialog |
Control |
Event |
Argument |
Condition |
Ordering |
WelcomeDlg |
Next |
* |
AfterWelcomeDlg |
* |
* |
delete the line starting
with "LicenseAgreement/Next/NewDialog/SetupTypeDlg" |
LicenseAgreementDlg |
Next |
NewDialog -> EndDialog |
Return |
IAgree = "Yes" |
* |
delete all lines starting
with "MaintenanceWelcomeDlg/Next", and add following |
MaintenanceWelcomeDlg |
Next |
[InstallMode] |
Remove |
1 |
1 |
MaintenanceWelcomeDlg |
Next |
[Progress1] |
Removing |
1 |
2 |
MaintenanceWelcomeDlg |
Next |
[Progress2] |
removes |
1 |
3 |
MaintenanceWelcomeDlg |
Next |
SpawnWaitDialog |
WaitForCostingDlg |
CostingComplete = 1 |
4 |
MaintenanceWelcomeDlg |
Next |
Remove |
All |
1 |
5 |
MaintenanceWelcomeDlg |
Next |
EndDialog |
Return |
1 |
6 |
|
15. Insert file "place.txt"
into msi file |
a. create a zero-byte file place.txt and
run "makecab place.txt Data1.cab" |
b. msidb.exe -d sun.msi
-a Data1.cab |
|
16. Modify "Summary Information"
table |
|
17. Modify "Binary"
table |
Name |
Data |
bannrbmp |
the banner
bitmap with .idb extension |
dlgbmp |
the left
panel bitmap with .idb extension |
|
18. Import the localized welcome message table |