Hans Leidekker
a358c7f6d4
msi: Update the UI in the MoveFiles action.
2010-03-05 13:14:23 +01:00
Hans Leidekker
aba6afc85e
msi: Move the implementation of the MoveFiles action to files.c.
2010-03-05 13:14:19 +01:00
Hans Leidekker
a5549305de
msi: Update the UI in the RemoveODBC action.
2010-03-05 13:14:11 +01:00
Hans Leidekker
eff0503f64
msi: Update the UI in the InstallODBC action.
2010-03-05 13:14:06 +01:00
Hans Leidekker
3c36d9d1f9
msi: Update the UI in the DeleteServices action.
2010-03-05 13:13:52 +01:00
Hans Leidekker
a70d86d3c9
msi: Display directory identifier instead of the full path in the CreateFolders action.
2010-03-05 13:13:47 +01:00
Hans Leidekker
31d0664ebd
msi: Update the UI in the AllocateRegistrySpace action.
2010-03-05 13:13:37 +01:00
Hans Leidekker
353035fadd
msi: Initialize a couple of variables.
...
Found by Valgrind.
2010-03-04 12:30:29 +01:00
Hans Leidekker
f62211198a
msi: Implement the RemoveEnvironmentStrings standard action.
2010-03-03 15:23:23 +01:00
Hans Leidekker
b891d0888a
msi: Implement the RemoveIniValues standard action.
2010-03-02 16:12:17 +01:00
Hans Leidekker
6c6b2a7a18
msi: Look at the requested action when publishing assemblies, not the action taken.
2010-03-02 16:11:53 +01:00
Hans Leidekker
ff3ed5f051
msi: Look at the requested action when moving files, not the action taken.
2010-03-02 16:11:49 +01:00
Hans Leidekker
c13d84fffc
msi: Look at the requested action when deleting services, not the action taken.
2010-03-02 16:11:44 +01:00
Hans Leidekker
2d3676d912
msi: Look at the requested action when stopping services, not the action taken.
2010-03-02 16:11:40 +01:00
Hans Leidekker
87448dcaeb
msi: Look at the requested action when installing services, not the action taken.
2010-03-02 16:11:36 +01:00
Hans Leidekker
c8308ef99d
msi: Only create environment strings when the component is set to be installed.
2010-03-02 16:11:31 +01:00
Hans Leidekker
a64372ca44
msi: Improve a trace.
2010-03-02 16:11:24 +01:00
Hans Leidekker
930b5e1c68
msi: The table for isolated components is called IsolatedComponent.
2010-02-26 14:20:53 +01:00
Hans Leidekker
342f866044
msi: Implement the RemoveRegistryValues standard action.
2010-02-25 16:00:51 +01:00
Hans Leidekker
253a7fa73c
msi: Implement the RemoveDuplicateFiles standard action.
2010-02-23 13:31:01 +01:00
Hans Leidekker
587e107398
msi: Allocate sufficient memory in ITERATE_InstallODBCDriver and ITERATE_InstallODBCTranslator.
...
Found by Valgrind.
2010-02-22 13:15:22 +01:00
Hans Leidekker
0f0e81d14a
msi: Implement the UnpublishComponents standard action.
2010-02-17 10:57:40 +01:00
Hans Leidekker
d95e3eb4d2
msi: PublishComponents must look at the requested install state of the feature, not the component.
2010-02-17 10:57:35 +01:00
Hans Leidekker
9cbb80d984
msi: Only run the CreateFolder and RemoveFolder actions when the component is set to be installed or removed, respectively.
2010-02-16 12:29:08 +01:00
Hans Leidekker
c32d9d7004
msi: Get rid of ACTION_VerifyFeatureForAction.
2010-02-16 12:29:01 +01:00
Hans Leidekker
598c542607
msi: Get rid of ACTION_VerifyComponentForAction.
2010-02-16 12:28:56 +01:00
Hans Leidekker
54391a11c0
msi: Update the UI when registering or unregistering type libraries.
2010-02-16 12:28:48 +01:00
Hans Leidekker
2276c291fc
msi: Implement the RemoveShortcuts standard action.
2010-02-15 12:20:02 +01:00
Hans Leidekker
f7879b43d5
msi: Fix a memory leak in ITERATE_StartService.
...
Found by Valgrind.
2010-02-12 14:49:38 +01:00
Hans Leidekker
82d50fa675
msi: Return the right error from ITERATE_RegisterTypeLibraries.
2010-02-12 14:49:38 +01:00
Hans Leidekker
98761037ab
msi: Implement the UnregisterTypeLibraries standard action.
2010-02-12 14:49:38 +01:00
Hans Leidekker
28bf8e1f0d
msi: Implement the RemoveODBC standard action.
2010-02-11 14:38:45 +01:00
Hans Leidekker
2568e5ec65
msi: Make sure attrs variable is properly double nul-terminated in ITERATE_InstallODBCDataSource.
2010-02-11 14:38:45 +01:00
Hans Leidekker
4742dfba98
msi: The File_Setup field in the ODBCDriver and ODBCTranslator tables is optional.
2010-02-11 14:38:45 +01:00
Hans Leidekker
068cb1291b
msi: Add a partial implementation of the ValidateProductID standard action.
2010-02-10 14:31:49 +01:00
Hans Leidekker
7331b3ca98
msi: Implement the UnregisterFonts standard action.
2010-02-10 14:31:15 +01:00
Hans Leidekker
5df62d0c42
msi: Add stub implementations of the DisableRollback and InstallAdminPackage standard actions.
2010-02-10 14:31:05 +01:00
Hans Leidekker
f5af1ca399
msi: Implement the SelfUnregModules standard action.
2010-02-05 15:33:11 +01:00
Hans Leidekker
3864ddf9f2
msi: Implement the RemoveFolders standard action.
2010-02-05 15:33:05 +01:00
Hans Leidekker
b9da31f112
msi: Implement the DeleteServices standard action.
2010-02-04 13:39:29 +01:00
Hans Leidekker
29f47299c2
msi: Implement the ScheduleReboot standard action.
2010-02-03 11:31:48 +01:00
Hans Leidekker
552a9c9b85
msi: Add a stub implementation of the SetODBCFolders standard action.
2010-02-03 11:31:48 +01:00
Hans Leidekker
246f9305e9
msi: Don't fail if the service to start is already running.
2010-02-01 12:11:18 +01:00
Hans Leidekker
1d0db2b19b
msi: Don't create all directories in the CreateFolders action.
...
The CreatFolders action should create only the directories listed in the
CreateFolder table, the rest will be created during the InstallFiles action.
Fixes the EndNote 8 installer.
2010-01-28 15:30:26 +01:00
Hans Leidekker
aa19638cb9
msi: Improve some traces.
2010-01-28 15:30:25 +01:00
Hans Leidekker
7c9cb1e1be
msi: Name and arguments in the service control table are formatted strings.
2010-01-28 15:30:25 +01:00
Hans Leidekker
0d770c96fe
msi: Don't evaluate the condition table when there are overrides.
2010-01-27 18:46:08 +01:00
Jason Edmeades
06c45a8d59
msi: Correct the setting of environment variables.
...
Contrary to the MSDN, you can 'create only' whilst using a previous value
(ie +-variable and [~];value). This breaks the install of an application
I was debugging who uses that throughout for all their variables. In
addition whilst adding some tests I've also cleaned up invalid prefix
syntax handling and semicolon removal if the original string is empty.
2010-01-20 15:34:19 +01:00
Hans Leidekker
2bfce6cfdc
msi: Fix parsing of feature overrides.
2010-01-18 14:39:23 +01:00
Marcus Meissner
e2f7946bbc
msi: Removed unnecessary NULL check.
2009-12-22 13:48:26 +01:00
James Hawkins
26d541b2a9
msi: Initialize type. If the value did not exist, type was uninitialized and passed to RegSetValueExW.
2009-12-17 13:09:46 +01:00
James Hawkins
1b7238a969
msi: Simplify ITERATE_WriteEnvironmentString.
...
Now we only allocate enough memory to exactly match the size of the
constructed string. Before, we were leaving some memory uninitialized
and overwriting the allocated memory in certain circum.
2009-12-16 12:27:11 +01:00
James Hawkins
d90aca35c4
msi: Add a NULL terminator to file->dest after reallocation.
2009-12-08 12:36:51 +01:00
Hans Leidekker
bd4bc16147
msi: Don't set the ALLUSERS property.
2009-11-17 16:05:27 +01:00
Hans Leidekker
e52531ab1d
msi: Handle environment strings without a value.
2009-11-13 12:21:46 +01:00
Hans Leidekker
a15e6cbb1a
msi: Avoid accessing uninitialized memory.
...
Found by valgrind.
2009-10-21 17:05:54 +02:00
Hans Leidekker
8dd3d389b0
msi: Create the local copy before opening the database.
2009-10-20 14:39:55 +02:00
Hans Leidekker
b7a81df452
msi: Allocate MSISCRIPT structure at package creation time.
2009-10-19 15:02:36 +02:00
Hans Leidekker
a187b43ddd
msi: Eliminate the last parameter from ACTION_PerformActionSequence.
2009-10-15 14:17:24 +02:00
Hans Leidekker
e3aa2f33d9
msi: Use a function to test the UI level instead of passing a boolean around.
2009-10-15 14:17:18 +02:00
Hans Leidekker
796eed1dc7
msi: Reorder functions to avoid forward declarations.
2009-10-15 14:17:06 +02:00
Hans Leidekker
843382f284
msi: Define common strings only once.
2009-10-15 14:16:50 +02:00
Hans Leidekker
9c8b83ce01
msi: Schedule a rename operation when the file to overwrite is in use.
2009-10-01 12:04:02 +02:00
Hans Leidekker
659768e203
msi: Set or override a user environment string when there is no prefix.
2009-09-16 12:57:33 -05:00
Hans Leidekker
dd1ca6ca5e
msi: Ignore CoInitialize failure in ACTION_CreateShortcuts.
2009-09-10 22:32:13 +02:00
Hans Leidekker
05e9a1fce8
msi: Add a partial implementation of MsiDetermineApplicablePatchesW.
2009-09-02 14:41:31 +02:00
Hans Leidekker
1169aa9a58
msi: Set REINSTALL property when the product is already installed and the command line is empty.
2009-09-02 14:41:24 +02:00
Hans Leidekker
7d837b9f82
msi: The assembly file version field is optional.
2009-05-29 15:35:59 +02:00
Hans Leidekker
965698cd28
msi: Don't publish package name as part of product properties.
...
This value does not exist directly under the product key on Windows.
2009-03-31 12:41:36 +02:00
Hans Leidekker
9c6e6efa32
msi: Detect privately installed assemblies.
...
Another fix for the office 2007 sp1 installer.
2009-03-25 15:02:45 +01:00
Hans Leidekker
86af876987
msi: Only apply a transform when its language id matches the system language id.
...
Fix for office 2007 sp1 installer.
2009-03-24 13:32:11 +01:00
James Hawkins
c965d839f9
msi: Allow the enumeration of other users' patches.
2009-03-23 15:52:17 +01:00
Hans Leidekker
4da865f324
msi: Handle ADVERTISE overrides.
2009-03-13 13:21:07 +01:00
Hans Leidekker
40cfbaf023
msi: Fix handling of REINSTALL overrides.
...
We were forcing features with a REINSTALL override to be reinstalled
locally, which is only correct if the original install state is local.
This causes problems with the office 2007 sp1 installer, which applies
a REINSTALL override to an advertised feature.
2009-03-12 14:29:56 +01:00
Hans Leidekker
18cd216e80
msi: Don't release view object twice in check_assembly_installed.
2009-02-19 16:17:17 +01:00
Hans Leidekker
43094e4a3e
msi: Make comparison of assembly field names case insensistive.
2009-02-19 16:17:17 +01:00
Michael Stefaniuc
5f3ac30b3c
msi: Remove superfluous pointer casts.
2009-01-15 12:43:03 +01:00
James Hawkins
c059ceb5b0
msi: Set the property specified by the Source attribute of the Media table when applying a patch.
2008-12-15 12:34:56 +01:00
James Hawkins
01eb930005
msi: Publish the patch information.
2008-12-15 12:34:52 +01:00
James Hawkins
b5e3e19a19
msi: Add the ability to query a specific context for install properties.
2008-12-15 12:34:18 +01:00
James Hawkins
4a9f6995aa
msi: Add the ability to query a specific context for a product key.
2008-12-15 12:34:06 +01:00
James Hawkins
a9e0290934
msi: Add the ability to delete multiple users' component keys.
2008-12-09 10:28:14 +01:00
James Hawkins
98c703ab87
msi: Add the ability to open multiple users' install properties key.
2008-12-09 10:27:52 +01:00
James Hawkins
b198f4f23f
msi: Add the ability to open multiple users' component keys.
2008-12-09 10:27:45 +01:00
James Hawkins
930b429d1e
msi: Add the ability to open multiple users product keys.
2008-12-09 10:27:37 +01:00
James Hawkins
e3074348fc
msi: Factor out the code to open the UserData features key.
2008-11-04 11:24:11 +01:00
James Hawkins
0c01c586c7
msi: Factor out the code to open the features key.
2008-11-04 11:24:04 +01:00
James Hawkins
70be1e7746
msi: Factor out the code to open a product key.
2008-11-04 11:23:51 +01:00
James Hawkins
ca71e5aff0
msi: Allow private properties from the AdminProperties property list.
2008-10-30 11:47:10 +01:00
James Hawkins
019f4af1c2
msi: Do not reinstall an assembly that already exists in the global assembly cache.
2008-10-29 13:29:32 +01:00
James Hawkins
2ffa433f80
msi: Convert command line property names to uppercase.
2008-10-27 12:02:13 +01:00
James Hawkins
bf9538f383
msi: Use the long file name in the WriteIniValues action.
2008-10-27 12:02:04 +01:00
James Hawkins
f80b5f6e66
msi: All files are uncompressed in an administrative image.
2008-10-17 11:44:21 +02:00
Michael Stefaniuc
704ebf280e
msi: Use the right FAILED/SUCCEEDED macro instead of negating the opposite.
2008-10-08 13:43:17 +02:00
James Hawkins
d15fddf6f5
msi: Resolve file source paths dynamically, as the source directory can be changed.
2008-10-07 12:13:33 +02:00
Rob Shearman
ef1b0cacfa
msi: Reduce destination file name used in the MoveFiles action to the long file name.
...
Add a test for this behaviour.
2008-09-10 12:08:52 +02:00
Andrew Talbot
be759dddb8
msi: Uninitialized variable fix (Coverity).
2008-09-10 10:41:54 +02:00
James Hawkins
3f00006f1f
msi: Source for new patch files can only be compressed.
2008-09-04 11:52:21 +02:00
James Hawkins
3bec162d51
msi: Skip the component action detection logic if there is no product code.
2008-08-25 11:40:38 +02:00
James Hawkins
d596ae29d8
msi: Skip the feature action detection logic if there is no product code.
2008-08-25 11:40:30 +02:00
James Hawkins
c855fbfcd8
msi: Don't install a feature that is disabled.
2008-08-25 11:40:22 +02:00
James Hawkins
4553d0fd47
msi: Remove an invalid setting of the install state.
2008-08-21 11:44:13 +02:00
James Hawkins
96dd6ce167
msi: Handle processing a component that is installed to source.
2008-08-21 11:43:44 +02:00
James Hawkins
5a3c3b6a12
msi: Use MsiQueryFeatureState to determine the feature's state.
2008-08-19 13:56:08 +02:00
James Hawkins
42115638c8
msi: Use MsiQueryComponent state to determine the component's state.
2008-08-19 13:56:04 +02:00
James Hawkins
9a8d2f3f5c
msi: Ignore a file that has a missing component.
2008-08-19 13:39:02 +02:00
James Hawkins
74239fcd91
msi: Factor out media handling and use the new interface to efficiently extract assemblies.
2008-08-19 13:37:51 +02:00
James Hawkins
bf51518449
msi: Perform costing again for the InstallExecute sequence.
2008-08-19 13:36:32 +02:00
Rob Shearman
cda469c890
msi: Fix handle leak in ITERATE_SelfRegModules.
2008-08-18 17:34:12 +02:00
James Hawkins
92ed390b28
msi: Change an ERR that was supposed to be a TRACE.
2008-08-05 14:09:34 +02:00
James Hawkins
469e4a5c94
msi: Directly register the typelib if it's not embedded in a PE module.
2008-07-29 12:20:19 +02:00
James Hawkins
38106ac230
msi: Handle the package context when unpublishing the product.
2008-07-29 12:19:37 +02:00
James Hawkins
7538f9ac19
msi: Use the newly added defines from the msidbSumInfoSourceType enumeration.
2008-07-22 13:10:38 +02:00
James Hawkins
2d4e4b6ae2
msi: Create the SourceList key in msi_publish_sourcelist.
2008-06-24 12:15:16 +02:00
James Hawkins
58e1543960
msi: Fix the published location of the upgrade code for the machine context.
2008-06-24 12:15:10 +02:00
James Hawkins
301f2a5eae
msi: Open the local user data product key for the machine context.
2008-06-24 12:15:03 +02:00
James Hawkins
cdb33f8a39
msi: Publish the UpgradeCode in PublishProduct.
2008-06-24 12:14:49 +02:00
James Hawkins
ef640a6cd5
msi: Publish a few more product properties.
2008-06-24 12:14:36 +02:00
James Hawkins
db2e8d2fdf
msi: Squash the package code property.
2008-06-24 12:14:23 +02:00
James Hawkins
ebeb537939
msi: Factor out publishing the product properties.
2008-06-24 12:14:14 +02:00
James Hawkins
d809b4e2d9
msi: Don't publish the product to an invalid location.
2008-06-24 12:14:07 +02:00
James Hawkins
ee8b4a0132
msi: Don't set an invalid install property in PublishProduct.
2008-06-24 12:14:00 +02:00
James Hawkins
68e6071d3c
msi: Factor out publishing the product source list.
2008-06-24 12:13:53 +02:00
James Hawkins
fac97bb8c5
msi: Factor out publishing icon files.
2008-06-24 12:13:46 +02:00
James Hawkins
45de896a3d
msi: Factor out the publishing of installation properties.
2008-06-19 12:34:23 +02:00
James Hawkins
b635e3170f
msi: Don't publish the upgrade key to an invalid location.
2008-06-19 12:34:15 +02:00
James Hawkins
2a180e060a
msi: Fix the PublishFeatures action to handle the package context.
2008-06-19 12:33:55 +02:00
James Hawkins
af56e28f7e
msi: Don't publish features to an invalid location.
2008-06-18 16:24:09 +02:00
James Hawkins
5f46dfd698
msi: Fix the RegisterUser action to handle the package context.
2008-06-18 16:24:01 +02:00
James Hawkins
288af81a7c
msi: Fix the ProcessComponents action to handle the package context.
2008-06-18 16:23:27 +02:00
James Hawkins
5f11262da9
msi: Determine the installation context after reading properties from the command line.
2008-06-18 16:23:22 +02:00
James Hawkins
4aa3a997f8
msi: Don't publish components to the Installer key.
2008-06-18 16:23:18 +02:00
James Hawkins
d3cc801da1
msi: Set the source path for uncompressed files when loading the file.
2008-06-11 11:27:15 +02:00
James Hawkins
dbbd5ca736
msi: Load folders first.
2008-06-11 11:26:55 +02:00
Dmitry Timoshkov
76d6b76737
msi: Mark some data as constant.
2008-05-26 19:46:09 +02:00
James Hawkins
70cd6bfbbd
msi: Check that the file key is valid before installing the assembly.
2008-05-20 15:43:54 +02:00
James Hawkins
6221975407
msi: Don't enable a feature's components if that feature is disabled.
2008-05-19 13:36:37 +02:00
James Hawkins
ece5a047de
msi: Set the OutOfDiskSpace property.
2008-05-14 12:22:01 +02:00
James Hawkins
9460ae35b5
msi: Copy the assembly file directly if it's not compressed.
2008-05-14 12:21:54 +02:00
Francois Gouget
633ee950a1
Assorted spelling fixes.
2008-05-07 12:07:11 +02:00
James Hawkins
bfe07d1d07
msi: Add initial implementation of MsiPublishAssemblies.
2008-04-30 13:45:23 +02:00
Alexandre Julliard
06bf8ea291
msi: Avoid creating zero-length string values in the registry.
2008-04-22 17:05:05 +02:00
Andrew Talbot
68975938f6
msi: Remove unused variables.
2008-04-22 11:54:38 +02:00
Austin English
5644f05edf
msi: Spelling fixes.
2008-04-08 12:25:13 +02:00
James Hawkins
bcba82dc0c
msi: Open the install properties key based on the install context.
2008-04-07 11:27:30 +02:00
James Hawkins
e21a26e47b
msi: Test and reimplement MsiQueryProductState.
2008-04-07 11:27:24 +02:00
James Hawkins
82517d6d67
msi: Set the install context based on the ALLUSERS property.
2008-04-07 11:27:10 +02:00
Andrew Talbot
9e85ec3bad
msi: Remove tentative declaration of static array with no size specifier.
2008-04-04 11:04:20 +02:00
James Hawkins
c48daf93bb
msi: Downgrade a few messages to WARN.
2008-04-03 11:29:58 +02:00
James Hawkins
a7d02a1f08
msi: Handle the case where no files match the wildcard in MoveFiles.
2008-04-03 11:29:53 +02:00
James Hawkins
ddfefc036f
msi: Fix a typo.
2008-03-25 11:44:57 +01:00
James Hawkins
fb508ff8fa
msi: Implement the StopServices action.
2008-03-24 11:39:47 +01:00
Marcus Meissner
db71fb15aa
msi: Initialize variables.
2008-03-14 11:21:22 +01:00
James Hawkins
de4cab20a8
msi: Deformat the service name and display name when installing the service.
2008-03-12 12:00:23 +01:00
James Hawkins
776a7d7065
msi: Fix an off-by-one error when applying embedded transforms.
2008-03-11 12:12:14 +01:00
James Hawkins
d52f48fed4
msi: Fix handling of published installer properties.
2008-03-07 10:52:46 +01:00
James Hawkins
4439e0b57d
msi: Make local functions static.
2008-03-01 12:18:40 +01:00
James Hawkins
eedfacdfe7
janitorial: Remove links to any microsoft site.
2008-03-01 12:04:03 +01:00
James Hawkins
cf84e2df5b
msi: Allow setting a media disk as the last used source in the internal msi_set_last_used_source.
2008-02-26 11:20:35 +01:00
James Hawkins
7d10d1d2d0
msi: Store the media type and set the last used source type accordingly.
2008-02-26 11:20:27 +01:00
James Hawkins
acfed4cfab
msi: Read the disk prompt source list property from the user-unmanaged context.
2008-02-26 11:20:13 +01:00
James Hawkins
21b4af1b46
msi: Fix and simplify handling of REG_MULTI_SZ strings in the WriteRegistryValues action.
2008-02-25 12:22:16 +01:00
James Hawkins
3de0014750
msi: Publish a few SourceList properties.
2008-02-21 12:53:00 +01:00
James Hawkins
2f658cb337
msi: Fix handling of the NULL separator when writing registry values.
2008-02-05 12:21:23 +01:00
James Hawkins
837588c6a3
msi: Pad the month and day to two digits.
2008-01-07 12:16:45 +01:00
James Hawkins
c37849ad82
msi: Copy the temporary package when storing the installer.
2008-01-07 12:16:15 +01:00
James Hawkins
e28cedf698
msi: Check the local package for existence when resolving the package source.
2008-01-07 12:16:04 +01:00
James Hawkins
186487663a
msi: OriginalDatabase can be a URL so check for a forward slash too.
2008-01-07 12:15:48 +01:00
James Hawkins
062070bfbe
msi: SourceDir is formed from the path of OriginalDatabase.
2008-01-07 12:15:27 +01:00
James Hawkins
c777d3095a
msi: Factor out msi_set_sourcedir_props.
2008-01-07 12:15:10 +01:00
James Hawkins
31c461ea5b
msi: WriteEnvironmentStrings should also write to REG_EXPAND_SZ strings.
2008-01-07 12:14:52 +01:00
Lionel Debroux
99ad76c3c1
msi: Correctly handle return value of msi_realloc.
2008-01-02 13:17:52 +01:00
James Hawkins
1277e1b55a
msi: Release the record when loading the hash data.
2007-12-17 11:35:05 +01:00
James Hawkins
fa8476e7f6
msi: Close the file handle returned by FindFirstFile.
2007-12-14 12:26:21 +01:00
James Hawkins
4160722b07
msi: Check the destination file's hash and skip that file if the hash matches.
2007-11-26 12:28:15 +01:00
James Hawkins
f6b27673b0
msi: Delete the uninstall key when the product is removed.
2007-11-13 13:35:01 +01:00
James Hawkins
c31fd4371a
msi: Process the ADDSOURCE property when setting feature states.
2007-11-06 14:01:17 +01:00
James Hawkins
1a0b23cd7d
msi: Implement the CCPSearch standard action.
2007-11-05 14:55:24 +01:00
James Hawkins
9d71238a16
msi: Fix the location used to write the user's environment variables.
2007-11-05 14:54:05 +01:00
James Hawkins
cf8e9e3311
msi: Remove an unused parameter.
2007-11-05 14:53:04 +01:00
James Hawkins
bb54ed1335
msi: Fix the sign of an index variable.
2007-11-05 14:52:56 +01:00
James Hawkins
1a896348d5
msi: Remove a legacy error check.
2007-11-05 14:52:51 +01:00
James Hawkins
ccdf578ba2
msi: Only unpublish the features if the entire product is being uninstalled.
2007-11-01 12:43:18 +01:00
James Hawkins
9f11a5a878
msi: Properly register features.
2007-11-01 12:43:12 +01:00
James Hawkins
fc6b9dd4e4
msi: Properly register and unregister components.
2007-11-01 12:43:06 +01:00
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