Commit Graph

457 Commits

Author SHA1 Message Date
Piotr Caban 808f3158bb msi: Improve installation with no argument of already installed product.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-23 10:49:12 +02:00
Zebediah Figura e1e668d41f msi: Store the current script in the package.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 20:01:39 +02:00
Zebediah Figura 5245b9d3a8 msi: Remove a superfluous substructure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 20:01:35 +02:00
Zebediah Figura 5c39852c1e msi: More fully implement the ExecuteAction action.
Major changes are adding several new UI messages (many of obscure
purpose), and executing the action given in the EXECUTEACTION
property rather than always running the InstallExecuteSequence table.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-14 10:44:38 +02:00
Zebediah Figura eb79fe1c3b msi: Remove ACTION_PerformUIAction().
It was originally used to show dialogs, but this is now handled in
ACTION_HandleCustomAction().

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-13 11:49:19 +02:00
Zebediah Figura 700ebc86a9 msi: Return the correct values from dialogs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:57:51 +09:00
Zebediah Figura 4ccc82a88a msi: Use the Error table for more messages.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:56:54 +09:00
Zebediah Figura 77e3d3372f msi: Use MsiProcessMessage() to send error messages.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:55:59 +09:00
Zebediah Figura 16f0dffd01 msi: Return the correct values from custom actions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-11 18:26:01 +02:00
Zebediah Figura f348c7c04c msi: Rewrite dump_record().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-11 18:25:59 +02:00
Zebediah Figura f9c68dfd92 msi: Use the given record for INSTALLMESSAGE_ACTIONDATA.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-10 20:51:09 +02:00
Zebediah Figura c788ed858e msi: Provide the result of the last action.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-10 20:51:09 +02:00
Zebediah Figura f9f53fe624 msi: Correctly format the template field for MsiProcessMessage().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-10 20:51:08 +02:00
Zebediah Figura 3033daec11 msi: Implement UI messages for dialogs.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-07 13:01:26 +02:00
Zebediah Figura df31a7c1ec msi: Store string and record callback data separately.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-19 12:04:34 +02:00
Hans Leidekker b956b1f407 msi: Set patch property Uninstallable.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-19 20:02:54 +02:00
Hans Leidekker d17d54e16d msi: Properly remove the product code from the ugrade codes key.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-04 14:10:08 +01:00
Hans Leidekker 5343a6f445 msi: Take the install context into account when deleting the product key.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-04 14:10:02 +01:00
Hans Leidekker 2b0d2ec553 msi: Use exact size for squashed GUID buffers.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-04 14:09:59 +01:00
Francois Gouget a8e401839e msi: Make parse_platform() static.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 18:41:49 +09:00
Hans Leidekker dc2228305c msi: Add support for patching global assembly files. 2015-04-10 22:46:19 +09:00
Hans Leidekker d263c91ce2 msi: Assume that file patches from registered MSI patches have already been applied. 2015-04-10 22:46:19 +09:00
Hans Leidekker 17b05316a5 msi: Clean up handling of temporary files. 2015-04-01 22:34:20 +09:00
Hans Leidekker 20ef12a762 msi: Don't mark global assembly files as installed when they are extracted. 2015-04-01 22:34:20 +09:00
Hans Leidekker 006801366e msi: Don't apply file patches in the cabinet extraction callback. 2015-04-01 22:34:19 +09:00
Hans Leidekker 0762dd68f8 msi: Store the disk id for file patches. 2015-04-01 22:34:19 +09:00
Hans Leidekker f8dc7c221b msi: Use the last sequence number specified for patch media when updating media records. 2015-03-25 22:40:34 +09:00
Hans Leidekker cd73576ec0 msi: Avoid allocating a database handle only to retrieve the summary information. 2015-03-25 22:40:30 +09:00
Hans Leidekker 052b3a748e msi: Fall back to the database summary information stream in MSI_OpenPackageW. 2015-03-25 22:40:24 +09:00
Francois Gouget f51569626c msi: Mark internal symbols with hidden visibility. 2015-03-24 20:01:30 +09:00
Hans Leidekker db3fdbe1e3 msi: Fix the case where the summary information stream is already open in MsiGetSummaryInformationW. 2015-03-17 00:19:50 +09:00
Hans Leidekker 7a4d8f57c7 msi: Improve tracing. 2015-03-17 00:19:48 +09:00
Hans Leidekker 4c1791f53e msi: Add offsets to file patch sequence numbers. 2015-03-04 23:57:42 +09:00
Hans Leidekker 0dba391d67 msi: Don't write streams to storage until the database is committed.
Native allows streams to be created with names that exceed the maximum
length allowed by OLE storages. These streams can be used normally, it's
just not possible to commit such a database.
2015-02-13 21:48:21 +09:00
Hans Leidekker db3346247c msi: Get rid of the refcount parameter to msi_addstringW. 2015-02-13 21:48:12 +09:00
Hans Leidekker d954fbf8da msi: Get rid of the open streams cache. 2015-02-13 21:48:07 +09:00
Akihiro Sagawa e52cbbcd03 msi: Remove 32-bit component registry keys with KEY_WOW64_32KEY flag. 2015-01-19 14:20:27 +01:00
Hans Leidekker 98ae03ff4d msi: Update properties after each transform that affects the property table. 2014-11-04 21:19:28 +09:00
Hans Leidekker 35ce56ac85 msi: Pass a database pointer to msi_clone_properties instead of a package pointer. 2014-11-04 21:19:24 +09:00
Hans Leidekker 1e3f15d88c msi: Support more transform validation flags. 2014-10-21 18:50:01 +09:00
Hans Leidekker 5cb10c96b2 msi: Don't skip the media check for the first volume.
Some installers require the first volume to be reinserted.
2014-10-15 22:40:03 +09:00
Hans Leidekker a547027b01 msi: Correctly [un]register progids when associated class and extensions change state. 2014-02-27 09:32:21 -06:00
Hans Leidekker 28ecbec88d msi: Get rid of the InstallMe field in MSIMIME. 2014-02-27 09:32:11 -06:00
Hans Leidekker f0d663fb4d msi: Use an INSTALLSTATE variable to track install state of classes and extensions. 2014-02-27 09:32:02 -06:00
Frédéric Delanoy f21225a41b msi: Fix typo in a field name. 2014-02-13 17:52:15 +01:00
Hans Leidekker 48908c130c msi: Remove the unused CurrentlyScripting field from MSISCRIPT. 2014-01-03 17:00:12 +01:00
Hans Leidekker ec7650908a msi: Merge events.c into dialog.c. 2013-07-27 11:56:01 -05:00
Hans Leidekker b64fabf39e msi: Don't defer custom actions in the UI sequence if they match the currently running script. 2013-06-03 21:11:51 +02:00
Hans Leidekker aeb7d70ffd msi: Handle more than one patch per file. 2013-02-27 19:23:13 +01:00
Hans Leidekker 07be9f0585 msi: Improve parsing of the supported platforms string. 2013-01-31 16:32:50 +01:00