James Hawkins
eec9bbb12d
msi: Remove a duplicated function.
2007-11-01 12:42:57 +01:00
James Hawkins
c3df74e24f
msi: Implement the MoveFiles standard action.
2007-11-01 12:42:50 +01:00
James Hawkins
b6cfc405bd
msi: Release the record only after using the record's data.
2007-10-23 18:04:50 +02:00
Mikolaj Zalewski
d5b620ea0b
msi: Make the WriteEnvironmentStrings handling of [~] a bit better.
2007-10-18 13:21:44 +02:00
James Hawkins
6ac0816109
msi: Implement the UnpublishFeatures standard action.
2007-08-10 12:58:17 +02:00
Andrew Talbot
0e14c29d66
msi: Cast-qual warning fix.
2007-07-24 11:25:40 +02:00
James Hawkins
dc3060c542
msi: Load the AdminProperties stream if the package is an Admin package.
2007-07-17 12:54:53 +02:00
James Hawkins
30fc5602de
msi: Reload properties as they may have been changed by a transform.
2007-07-13 12:27:33 +02:00
James Hawkins
0e44e090c5
msi: Set the WindowsInstaller value in RegisterProduct instead of PublishProduct.
2007-07-03 13:49:44 +02:00
James Hawkins
a2df31aea1
msi: Only publish the product if at least one feature is to be installed.
2007-07-03 13:49:35 +02:00
James Hawkins
624bbbe78a
msi: Unpublish the product when it is entirely removed.
2007-07-03 13:49:18 +02:00
James Hawkins
5e46fc9019
msi: Delay publishing of the SourceList until the PublishProduct action.
2007-07-03 13:43:20 +02:00
James Hawkins
08443b3bf7
msi: PackagePath must also include the package name.
2007-07-03 13:43:00 +02:00
James Hawkins
bafc4dc385
msi: Ignore invalid conditional expressions when checking the launch conditions.
2007-06-29 12:33:19 +02:00
James Hawkins
c18b77557d
msi: Set the WindowsInstaller value of the UserData product key when publishing the product.
2007-06-27 12:32:45 +02:00
Rob Shearman
023383afd3
msi: Free version after using lpVer in msi_get_disk_file_version as lpVer points inside of version.
2007-06-27 11:44:49 +02:00
Rob Shearman
9c6fac65d8
msi: Check the return value of VerQueryValueW in msi_get_disk_file_version.
2007-06-27 11:44:44 +02:00
Rob Shearman
8a94f7aad3
msi: Implement MsiGetMode for MSIRUNMODE_SCHEDULED, MSIRUNMODE_COMMIT and MSIRUNMODE_ROLLBACK.
2007-06-26 11:56:33 +02:00
Andrew Talbot
0e4ccb822c
msi: Fix use of uninitialized variable (Coverity).
2007-06-25 13:23:58 +02:00
James Hawkins
261e1179bb
msi: Patches are applied based on ProductCode, not ProductID.
2007-06-18 12:14:58 +02:00
Dmitry Timoshkov
6076485fde
msi: Simplify the code.
2007-06-15 12:41:07 +02:00
James Hawkins
881f59254a
msi: Fixed the WriteEnvironmentStrings action.
2007-06-14 13:52:59 +02:00
James Hawkins
5b8641a5a4
msi: Implement the WriteEnvironmentStrings standard action.
2007-05-31 13:27:15 +02:00
James Hawkins
c2e91588e9
msi: Perform a forced reboot if a custom action returns ERROR_INSTALL_SUSPEND.
2007-05-30 11:49:16 +02:00
James Hawkins
987c2c85e1
msi: Add stub handlers for the remaing standard actions that reference tables.
2007-05-07 15:18:47 +02:00
James Hawkins
1104dc088d
msi: Run the costing actions for both the UI and execute sequences.
2007-05-01 13:54:10 +02:00
James Hawkins
baad888766
msi: Reset the folder's resolved target before setting the target in CostFinalize.
2007-05-01 13:53:25 +02:00
Rob Shearman
220f93db61
msi: Fix an off-by-one error when calculating the path and filename for the action data in the SelfRegModules action.
...
The backslash is in p[0], not p[1].
2007-04-25 11:49:34 +02:00
Hans Leidekker
1d19c2b72f
msi: Install data sources in the InstallODBC custom action.
2007-04-23 14:07:18 +02:00
Hans Leidekker
33c025b7f2
msi: Install translators in the InstallODBC custom action.
2007-04-23 14:06:47 +02:00
Alban Browaeys
7aa3917823
msi: Move msi_free(msiFilePath) to enable ERR message to use it before it is freed.
2007-04-16 13:20:43 +02:00
James Hawkins
6da8041d47
msi: Run the InstallExecute sequence if the InstallUISequnce table is empty.
2007-04-16 12:10:03 +02:00
James Hawkins
8cedb218c3
msi: Load the folder property if available and requested.
2007-03-29 21:01:42 +02:00
Steven Stein
ee3ac7a8fb
msi: ValidateProductID action stub.
2007-02-14 22:17:41 +01:00
Misha Koshelev
d8b00a071d
msi: Make sure to ignore UI level flags in dialog and files as well.
2007-02-07 11:03:39 +01:00
Misha Koshelev
ecd20e28ac
msi: InstallPackage check for UI level must not disregard flags.
2007-02-06 13:19:55 +01:00
Francois Gouget
aab5e5856e
Don't put single quotes around '%s' when using the debugstr_*() functions.
2007-01-18 12:55:50 +01:00
Andrew Talbot
020bda7ee2
msi: Declare some functions static.
2007-01-12 20:41:49 +01:00
Mike McCormack
97419aea80
msi: Examine the attributes of all features before setting a component's state.
2006-12-05 11:29:02 +01:00
James Hawkins
58bb3571de
msi: Add handling for the StartServices action.
2006-12-04 12:22:32 +01:00
James Hawkins
d3bec32500
msi: Add handling for the InstallODBC action.
2006-11-29 14:08:14 +01:00
Dmitry Timoshkov
1cdf5cddac
msi: Make some data const and static.
2006-11-29 12:44:10 +01:00
Mike McCormack
a3a2eaea93
msi: Update the UI in one place only in ACTION_ProcessComponents.
2006-11-29 12:37:12 +01:00
Mike McCormack
1770c9125d
msi: Advertise components of a feature that has the msidbFeatureAttributesFavorAdvertise property.
2006-11-29 12:37:07 +01:00
Mike McCormack
7eb270265f
msi: Load all folders in one query, rather one per query.
2006-11-22 11:43:05 +01:00
Mike McCormack
b921118f14
msi: Split msi_set_sourcedir_props into a separate function.
2006-11-20 11:50:15 +01:00
Mike McCormack
fc56423904
msi: Spelling fixes.
2006-11-20 11:50:15 +01:00
Mike McCormack
eba742e5cd
msi: Fix a memory leak in load_folder().
2006-11-17 11:14:44 +01:00
Francois Gouget
1ccf944900
Assorted spelling fixes.
2006-11-13 13:01:53 +01:00
Paul Vriens
ded9943b5b
msi: Fix typo's (Coverity).
2006-11-13 12:58:46 +01:00
Mike McCormack
3fe6a5d01e
msi: Only log the Action, as it's the same as ActionRequest.
2006-11-10 11:35:38 +01:00
Mike McCormack
87fa854dcf
msi: Check whether the component is enabled first.
2006-11-10 11:35:33 +01:00
Mike McCormack
ad80eceb5f
msi: Component attributes are bitmasks.
2006-11-10 11:35:28 +01:00
Mike McCormack
063c42cfa6
msi: Fix a memory leak.
2006-11-08 11:26:16 +01:00
Mike McCormack
9efb7b71ba
msi: By default, install components locally.
2006-11-07 15:07:01 +01:00
Mike McCormack
c5c5521015
msi: Split ACTION_CostFinalize into two functions.
2006-11-07 15:06:40 +01:00
Mike McCormack
f86cfd4088
msi: Avoid a memory leak by freeing actions scripts in one place only.
2006-11-02 12:25:07 +01:00
Mike McCormack
9a4ba8c114
msi: Search the patch package for source cabinet files.
2006-11-01 13:38:09 +01:00
Mike McCormack
ddf0b593bb
msi: Mark components with missing or outdated files as incomplete.
2006-10-31 11:46:57 +01:00
Mike McCormack
b76691537f
msi: Split ACTION_UpdateInstallStates into two separate functions.
2006-10-30 11:20:06 +01:00
Mike McCormack
9375fd9fd3
msi: Remove redundant null checks before MSI_EvaluateCondition.
2006-10-27 12:01:37 +02:00
Mike McCormack
575cc67d0f
msi: Use msi_feature_set_state and msi_component_set_state where possible.
2006-10-26 12:56:09 +02:00
Mike McCormack
6395ff6a5c
msi: Create macro functions to set feature and component states.
2006-10-26 12:56:09 +02:00
Mike McCormack
d1723de566
msi: Split code to get a file's verion into a separate comment.
2006-10-24 11:45:01 +02:00
Mike McCormack
0d7dc8f98d
msi: Only apply transforms that are valid for a database.
2006-10-23 12:37:40 +02:00
Mike McCormack
7f98f1d086
msi: Initialize the summary information from a storage interface, not a db.
2006-10-23 12:37:32 +02:00
James Hawkins
929395c0f0
msi: Only initialize a component's state if it is linked with a feature.
2006-10-20 11:41:09 +02:00
James Hawkins
9bc12ade13
msi: Implement the InstallServices action.
2006-10-20 11:41:09 +02:00
Mike McCormack
4047cc7009
msi: Fix a memory leak.
2006-10-17 11:17:31 +02:00
James Hawkins
3797e6cada
msi: Also set the SOURCEDIR property in MSI_InstallPackage.
2006-10-14 20:21:17 +02:00
Francois Gouget
58162f87fd
Assorted spelling fixes.
2006-10-13 11:55:04 +02:00
James Hawkins
c507543554
msi: Set the SourceDir and SOURCEDIR properties in the ResolveSource action.
2006-10-11 12:09:54 +02:00
Mike McCormack
80affb3c2d
msi: Merge action.h into msipriv.h.
2006-10-10 16:12:12 +02:00
James Hawkins
563a50ab35
msi: Make internal functions static.
2006-10-09 14:40:08 +02:00
Mike McCormack
f1d4646a49
msi: Win64 printf format warning fixes.
2006-10-05 11:32:32 +02:00
James Hawkins
bbd4d1e3ef
msi: If the feature linked to a component has a state of INSTALLSTATE_UNKNOWN, the component's state should match.
2006-09-26 21:56:05 +02:00
James Hawkins
545d0e70cf
msi: Disable child features of parent features that are unselected because of the install level.
2006-09-21 13:03:32 +02:00
James Hawkins
32f570222b
msi: Don't check a component's install state if a component ID is not provided.
2006-09-21 13:02:00 +02:00
James Hawkins
d893cb7d1e
msi: Load the component states in CostFinalize instead of CostInitialize.
2006-09-21 13:01:33 +02:00
James Hawkins
ca5c11009d
msi: Initialize all features' action states to INSTALLSTATE_UNKNOWN.
2006-09-21 13:01:18 +02:00
James Hawkins
937b9b2bbc
msi: Only override a feature whose action state is INSTALLSTATE_SOURCE.
2006-09-21 13:01:10 +02:00
Andrew Talbot
2e372c08b5
msi: Cast-qual warnings fix.
2006-09-20 20:02:48 +02:00
Mike McCormack
4fa08a638c
msi: Split the font registration code out into a separate file.
2006-09-13 11:42:35 +02:00
Mike McCormack
5f83069bd8
msi: Split code to create a random package name into a separate function.
2006-09-08 12:44:39 +02:00
Dan Kegel
337e1e202f
msi: Callers of alloc_msihandle should handle failure.
2006-08-29 12:21:54 +02:00
James Hawkins
3cb82ab8d2
msi: If a component's state is not local, source, or default, default to the local state.
2006-08-12 11:39:58 +02:00
James Hawkins
f84fa0ce63
msi: Fix the compressed files logic.
...
If the compressed file attribute is not set, use the Word Count
property to determine if files are compressed.
2006-08-08 19:34:34 +02:00
Robert Shearman
ab378803ef
msi: Fix the creation of shortcuts with a null icon index by mapping it to zero.
2006-08-03 22:23:09 +02:00
James Hawkins
7edea0cc68
msi: Set the install state to INSTALLSTATE_LOCAL for features with compressed files.
2006-08-02 11:42:20 +02:00
James Hawkins
38f2ba23f1
msi: Fix a couple install state test cases.
...
- Correctly handle the msidbComponentAttributesOptional component attribute.
- Don't set a component's state to INSTALLSTATE_LOCAL if the
msidbComponentAttributesSourceOnly attribute is provided.
2006-08-01 10:49:20 +02:00
James Hawkins
98d1486410
msi: Set the install state to INSTALLSTATE_LOCAL for components with compressed files.
2006-07-31 21:36:19 +02:00
Mike McCormack
43f7f3ec3f
msi: Don't set the shortcut's working directory if it's NULL.
2006-07-28 12:32:17 +02:00
Mike McCormack
1d46cdf11a
msi: Always load all the components.
2006-07-26 10:23:34 +02:00
James Hawkins
cae3215a6f
msi: Set the component's initial state based on its attributes.
2006-07-21 20:22:27 +02:00
James Hawkins
7bcac31dcf
msi: Update feature states after changing install levels, as they may have changed.
2006-07-20 12:50:14 +02:00
James Hawkins
7c7f0bb2c1
msi: Rename SetFeatureStates to match the naming scheme of internal msi functions.
2006-07-20 12:50:02 +02:00
Mike McCormack
9a9195d6e4
msi: Only load the features and files tables once.
2006-07-19 18:15:21 +02:00
James Hawkins
2396e2a59f
msi: Sort SelectionTree items by their Display value.
2006-07-19 09:46:31 +02:00
Mike McCormack
2ec80faabe
msi: Move msi_get_property_int() to helpers.c
2006-07-17 14:46:25 +02:00
Mike McCormack
230af9d21f
msi: Move version string conversions to registry.c.
2006-07-14 13:32:39 +02:00
James Hawkins
a1910e11bb
msi: Fix handling of the no-op identifier in the Directory table.
2006-06-21 13:53:51 +02:00
Alexandre Julliard
b79a53e959
msi: Make some variables static and/or const.
2006-06-12 13:39:59 +02:00
Mike McCormack
ea3ab4952b
msi: Remove some unnecessary NULL checks.
2006-06-09 15:20:14 +02:00
Mike McCormack
2acf800fd4
msi: Fix some pointer to integer casts.
2006-05-25 10:44:44 +02:00
Mike McCormack
20c5746649
msi: Fix a possible memory leak.
2006-05-24 10:52:33 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Labrousse Jean
d0862c365b
msi: Fix short name and long name mismatch in action.c.
2006-05-23 13:03:57 +02:00
Francois Gouget
e739ba9551
Assorted spelling fixes.
2006-05-15 15:05:05 +02:00
Mike McCormack
3a94011ab6
msi: Clean up memset usage.
2006-04-18 21:13:52 +02:00
Mike McCormack
886036696a
msi: Add stub for the RegisterComPlus and UnregisterComPlus actions.
2006-03-22 21:36:20 +01:00
Mike McCormack
c1513be48c
msi: Improve handling of short paths.
2006-03-21 16:19:07 +01:00
Mike McCormack
fe8cd38812
msi: Remove some unnecessary indent.
2006-03-09 12:50:59 +01:00
Robert Shearman
4ac8567497
msi: Fix heap overflow in ITERATE_CreateShortcuts.
2006-02-22 22:15:54 +01:00
Robert Shearman
d679bc5ab3
msi: Move the firing of control events to MSI_ProcessMessage.
...
Move the firing of control events from internal helper functions to
MSI_ProcessMessage so that custom actions can all cause control events
to be fired.
Added the firing of progress events.
2006-01-23 17:30:31 +01:00
Robert Shearman
d2e48e01ac
msi: Call ui_actiondata for more actions.
2006-01-23 17:29:50 +01:00
Mike McCormack
477bce38dc
msi: Eliminate a fixed length buffer.
2006-01-16 20:38:28 +01:00
Mike McCormack
aa81e4fa68
msi: Don't crash if there's no script present when we try execute one.
2006-01-10 12:09:19 +01:00
Mike McCormack
e534e7726b
msi: Apply any MSI transforms specified by the TRANSFORMS property.
2006-01-04 14:51:25 +01:00
Mike McCormack
b7270b8c2d
msi: Change some FIXME messages to comments.
2005-12-31 13:18:11 +01:00
Mike McCormack
f24a9e2a24
msi: Add stub actions for CCPSearch and RMCCPSearch.
2005-12-31 13:14:23 +01:00
Francois Gouget
0edbaf7e80
Remove spaces before '\n' in traces.
2005-11-10 12:14:56 +00:00
Ivan Leo Puoti
5b22e4d6ef
Fix some wrong prototypes.
2005-11-03 11:35:11 +00:00
Mike McCormack
a977b2c346
Remove some redundant null pointer checks.
2005-11-03 09:56:29 +00:00
Aric Stewart
d5655f90cf
Force files to install if the REINSTALL property is set.
2005-11-02 14:21:17 +00:00
Mike McCormack
fd4a2003db
Implement the RemoveFiles action.
2005-11-02 11:42:56 +00:00
Mike McCormack
dded8fb7a8
Use an enumeration for file states.
2005-11-02 10:56:42 +00:00
Mike McCormack
559427023f
Add a stub for the AllocateRegistrySpace action.
2005-10-30 19:23:28 +00:00
Mike McCormack
ec5edeebf4
Define MSIDBOPEN_ constants using LPCWSTR when compiling Wine.
2005-10-30 19:21:51 +00:00
Mike McCormack
9293f869cc
Use msi_get_property_int() in a few more places.
2005-10-30 19:16:45 +00:00
Mike McCormack
9ba8ba30bb
Use "static const" rather than "const static" as gcc -W complains
...
about the former.
2005-10-30 19:04:26 +00:00
Mike McCormack
991bae1409
Don't change the UI level during ExecuteAction.
2005-10-29 11:40:03 +00:00
Mike McCormack
d693f461ba
Remove the unused 1st parameter of ACTION_VerifyComponentForAction.
2005-10-29 11:36:48 +00:00
Mike McCormack
9c8458514c
Some installers don't call the CreateFolders action before the
...
InstallFiles action as MSDN specifies, but it still seems to work, so
make sure that we create component directories in the InstallFiles
action anyway.
2005-10-29 11:29:17 +00:00
Thomas Weidenmueller
561f2f0399
Passing NULL as the last two parameters to ReadFile is illegal and
...
actually causes a crash on windows. The attached patch fixes this.
2005-10-29 10:29:08 +00:00
Mike McCormack
03b4dbbdc4
Create component folders in the CreateFolders action.
2005-10-28 09:39:29 +00:00
Mike McCormack
558abec8d5
If an action fails, print out its name as well as the error code. Use
...
%d for error codes so it's easy to match them up to something in
winerror.h.
2005-10-27 12:39:28 +00:00
Mike McCormack
51c6618d8d
Rename load_dynamic_stringW to msi_dup_record_field to better describe
...
what it does, and replace a few instances with MSI_RecordGetString to
avoid allocating memory.
2005-10-27 12:36:12 +00:00
Mike McCormack
ba293eef48
Tidy up the RegisterProduct action a little.
2005-10-27 12:08:16 +00:00
Mike McCormack
f8fef6ea94
Create a stub function to apply a single table transform and call it
...
where we need to apply transforms.
2005-10-26 13:56:33 +00:00
Mike McCormack
965a72add0
Enumerate the substorage transforms for any patches that are passed on
...
the command line with PATCH=. Need to implement
table_apply_transform() before this will do anything interesting.
2005-10-26 12:06:21 +00:00
Mike McCormack
61f24a4ca7
Rename ACTION_DoTopLevelINSTALL to MSI_InstallPackage, remove its
...
duplicate 4th parameter.
Split the code to copy a package into a separate function.
2005-09-30 10:32:41 +00:00
Mike McCormack
74f0de9638
Create a function to read a property as an integer.
2005-09-29 10:32:39 +00:00
Mike McCormack
3b95515015
Add some more action stubs, remove forward declarations.
2005-09-28 18:10:44 +00:00
Mike McCormack
e3452228c6
Split command line parsing from MSI_InstallPackage into a separate
...
function.
2005-09-28 15:12:32 +00:00
Mike McCormack
2586a0958e
Make a macro function for unimplemented actions.
...
Add some more unimplemented action stubs.
2005-09-26 09:56:18 +00:00
Mike McCormack
b9a3a7a1f9
Stub implementation of the IsolateComponents action.
2005-09-25 15:14:03 +00:00
Mike McCormack
94fbe09c5f
Add a stub implementation of the BindImage action.
2005-09-23 17:21:10 +00:00
Mike McCormack
567f0314af
Stub implementation of the PatchFiles action.
2005-09-23 11:06:57 +00:00
Mike McCormack
8e22e7d7a9
Stub implementation of the MoveFiles action.
2005-09-23 10:48:17 +00:00
Mike McCormack
202166c343
Stub implementation of the RemoveIniValues action.
2005-09-23 10:09:18 +00:00