Commit Graph

3691 Commits

Author SHA1 Message Date
Nikolay Sivov 117ae25764 msi: MsiInstaller coclass is not included in a typelib. 2014-03-20 17:40:33 +01:00
Nikolay Sivov 0e90cebce0 msi: 'optional' only applies to VARIANT and VARIANT* types. 2014-03-18 11:40:51 +01:00
Nikolay Sivov 29eaebaa34 msi: Update feature selection bitmaps. 2014-03-12 10:24:05 +01:00
Marcus Meissner 3fa41c9e70 msi: Fixed missing free in an error path (Coverity). 2014-03-10 10:41:15 +01:00
Francois Gouget f6ccfaa6f3 msi/tests: Update is_process_limited() to deal with non-administrator accounts. 2014-03-05 11:50:35 +01:00
Francois Gouget 38aa71b2c6 msi/tests: Skip some package tests if in a non-administrator, non-power user account. 2014-03-05 11:50:30 +01:00
Francois Gouget 601c5a1a68 msi/tests: Avoid msi test failures when running in an account with insufficient privileges. 2014-03-05 11:50:22 +01:00
Francois Gouget 65bacd4b69 msi/tests: Avoid source test failures when running in an account with insufficient privileges. 2014-03-05 11:50:02 +01:00
Francois Gouget badff7c43a msi/tests: Check that we have enough privileges to run the automation tests.
Note that we could have enough privileges to do the InstallProduct
tests, but not enough to clean up the registry after them, thus
causing later runs to fail. In that case we skip the tests.
2014-03-04 19:23:35 +01:00
Hans Leidekker f525038142 msi: Remove the product reference when a shared component is unregistered. 2014-03-03 17:02:51 +01: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
Vincent Povirk b4daf7a7f0 msi/tests: Add tests for [un]registering progids. 2014-02-26 11:12:25 -06:00
Hans Leidekker 1ae3bcc94d msi: Don't install services without an image path.
Spotted by Aric Stewart.
2014-02-22 08:41:22 -06:00
Frédéric Delanoy f21225a41b msi: Fix typo in a field name. 2014-02-13 17:52:15 +01:00
André Hentschel 3c1ca4e548 msi: Use boolean return value in boolean function. 2014-02-04 11:15:47 +01:00
André Hentschel 2d6685f4ec msi: Check return value from MSIREG_OpenInstallProps (Coverity). 2014-01-06 17:19:43 +01:00
Frédéric Delanoy a06363669f msi/tests: Use BOOL type where appropriate. 2014-01-06 17:15:14 +01:00
Hans Leidekker 48908c130c msi: Remove the unused CurrentlyScripting field from MSISCRIPT. 2014-01-03 17:00:12 +01:00
Hans Leidekker fcb924c144 msi: Fall back to the global temporary directory when the TempFolder property resolves to a non-existing directory. 2014-01-03 17:00:08 +01:00
Hans Leidekker 41d2b53c5b msi: Always derive the SourceDir property from the database path. 2014-01-03 17:00:02 +01:00
Alexandre Julliard 99ef0d6ff0 makefiles: Get rid of the MAKE_TEST_RULES variable. 2014-01-02 12:13:16 +01:00
Alexandre Julliard 5e7416e5c8 makefiles: Get rid of the MAKE_DLL_RULES variable. 2014-01-02 12:08:18 +01:00
Alexandre Julliard d08ff3ff19 makefiles: Use a single variable for all types of idl files. 2013-12-31 18:15:17 +01:00
Frédéric Delanoy 1d36b93f7e msi/tests: Constify some character strings. 2013-12-27 14:31:52 +01:00
Alexandre Julliard 566d3418af makedep: Add a separate pragma flag for typelibs that need registration. 2013-12-26 13:32:49 +01:00
Hans Leidekker f222582af6 msi: Don't add text to the scrollable text control twice. 2013-12-19 17:10:26 +01:00
Frédéric Delanoy 1983448942 msi: Constify a character string. 2013-12-18 11:34:53 +01:00
Alexandre Julliard ca41acc1f9 makefiles: Automatically update the IDL_H_SRCS variable. 2013-12-15 10:23:06 +01:00
Alexandre Julliard 4f3d71cef3 makefiles: Get rid of the no longer used PO_SRCS variables. 2013-12-15 10:23:04 +01:00
Frédéric Delanoy 5ba7f79bad Assorted spelling fixes. 2013-12-03 19:41:53 +01:00
Hans Leidekker 3271b98263 msi: Fix handling of empty mask edit templates. 2013-12-02 12:12:39 +01:00
Frédéric Delanoy 57d7f74d34 Assorted spelling fixes. 2013-11-21 19:44:46 +01:00
Qian Hong 9612ed1ba6 msi: Get extension name by strrchrW instead of strchrW. 2013-11-13 18:31:36 +01:00
Alexandre Julliard 5756ee09f3 makefiles: Add makedep pragmas for rc files that contain translations. 2013-11-05 20:38:19 +01:00
Alexandre Julliard c7803b885b makefiles: Add makedep pragmas for registration idl files. 2013-11-05 20:38:18 +01:00
Alexandre Julliard f8421142e7 makefiles: Add makedep pragmas for typelib idl files. 2013-11-05 20:38:18 +01:00
Alexandre Julliard 7960e02b17 makefiles: Add makedep pragmas for identifier idl files. 2013-11-05 20:38:18 +01:00
Dmitry Timoshkov a5b51a766b msi: Check number of bytes returned by ReadFile. 2013-10-30 15:28:56 +01:00
Frédéric Delanoy ec1888b7d3 msi/tests: Use BOOL type where appropriate. 2013-10-29 10:22:01 +01:00
Frédéric Delanoy 8793b5fe28 msi: Use BOOL type where appropriate. 2013-10-28 10:40:20 +01:00
Kohei Takahashi 953359c73f msi: Return -1 on open failure in FDI callbacks. 2013-10-15 19:20:19 +02:00
Hans Leidekker 1d124f8869 msi/tests: Compile with -D__WINESRC__. 2013-10-15 14:28:22 +02:00
Hans Leidekker 0354af649a msi/tests: Prepare msi.c for the switch to -D__WINESRC__. 2013-10-15 14:28:22 +02:00
Hans Leidekker 07043df793 msi/tests: Prepare suminfo.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker 2a70f1bde3 msi/tests: Prepare source.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker c3764ff014 msi/tests: Prepare record.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker 8a97d08759 msi/tests: Prepare patch.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker 4d236f1942 msi/tests: Prepare package.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker e243979c4f msi/tests: Prepare install.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker 569d04cd7b msi/tests: Prepare format.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker f1498d7736 msi/tests: Prepare db.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker ae5c7c2a18 msi/tests: Prepare automation.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Hans Leidekker 0e8b5ac54a msi/tests: Prepare action.c for the switch to -D__WINESRC__. 2013-10-15 14:28:21 +02:00
Frédéric Delanoy e21abfe07a msi/tests: Use BOOL type where appropriate. 2013-10-08 09:09:18 +02:00
Marcus Meissner 52c9b9f2b3 msi: Fixed a memory leak in an error case (Coverity). 2013-10-07 13:32:07 +02:00
Michael Stefaniuc 0e681027a2 tests: Compile the tests by default with -D__WINESRC__. 2013-10-02 11:04:02 +02:00
Francois Gouget 7c146b8aa0 msi: Make some dialog_xxx() functions static. 2013-09-13 10:57:45 +02:00
Alexandre Julliard 3f98185fb8 msi: Use bison directives instead of defines to specify extra lexer parameters. 2013-08-01 12:00:04 +02:00
Hans Leidekker 1257db2109 msi: Fix integer conversion in get_table_value_from_record. 2013-07-30 14:43:34 +02:00
Hans Leidekker fdf8ab11d9 msi: Format text set by means of a control event. 2013-07-27 11:56:13 -05:00
Hans Leidekker 4759dcc3c1 msi: Subscribe to all control events instead of just the first. 2013-07-27 11:56:08 -05:00
Hans Leidekker ec7650908a msi: Merge events.c into dialog.c. 2013-07-27 11:56:01 -05:00
Hans Leidekker 3169db2b54 msi: Add support for the hyperlink control. 2013-07-27 11:55:27 -05:00
Hans Leidekker 7974b12ab1 msi: Restrict the match on files from cabinets to the disk ID. 2013-06-20 21:07:56 +02:00
Hans Leidekker 407584fd3e msi/tests: Avoid test failures caused by broken MsiGetFileVersionA. 2013-06-18 20:33:42 +02:00
Hans Leidekker edee379d81 msi/tests: Move some more tests and remove a useless test. 2013-06-11 18:07:44 +02:00
Hans Leidekker b82a5ab27a msi/tests: Move some tests around to avoid timeouts on the testbot. 2013-06-10 19:30:54 +02:00
Daniel Jelinski a2307a3339 msi: Update LastSequence for empty media as well. 2013-06-10 11:51:03 +02: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 1be1b8433a msi: Remove an unused parameter from action_type_matches_script. 2013-05-29 18:12:05 +02:00
Hans Leidekker 74aa47fa8e msi: The UI sequence exists if there are runnable actions in the InstallUISequence table. 2013-05-29 18:12:01 +02:00
Dmitry Timoshkov 30fc34b881 msi: Fix memory leak. 2013-05-21 12:06:26 +02:00
Daniel Jelinski 4b4bd0201c msi: Remove trailing spaces from command line property name. 2013-05-20 21:15:38 +02:00
Alexandre Julliard d578d0d6c3 msi: Don't bother to unregister classes at process exit. 2013-05-14 11:33:19 +02:00
Hans Leidekker 10975967df msi: Set the PrimaryVolumePath and PrimaryVolumeSpaceAvailable properties. 2013-05-09 19:24:16 +02:00
Hans Leidekker b98ef8f087 msi: Treat an empty install location as missing. 2013-05-07 17:20:46 +02:00
Daniel Jelinski ce6a037abc msi: Fix ComputerName property. 2013-05-03 21:49:33 +02:00
Hans Leidekker 8328562e4c msi: Assume a transform is applicable if it doesn't specify any products. 2013-05-03 21:39:22 +02:00
Francois Gouget d5fc4ce772 msi/tests: Add a trailing '\n' to an ok() call and fix a typo. 2013-05-02 18:52:14 +02:00
Hans Leidekker 1ed6bc2e02 msi: Properly map script function return values to MSI errors. 2013-05-02 18:51:58 +02:00
Christian Costa 7129293b9a msi: Use next cabinet from the media table instead of failing when there is a mismatch with continuous cabinet. 2013-05-01 19:30:28 +02:00
Christian Costa e249b93092 msi: Add tests to show that only msi cab filename is taken in case of mismatch with the one given by previous cab. 2013-05-01 19:30:24 +02:00
Hans Leidekker 27a1a9a862 msi: Fix one more occurrence of overwriting verstr in set_installer_properties. 2013-04-17 16:31:05 +02:00
Hans Leidekker ca025a525d msi: Don't overwrite verstr in set_installer_properties. 2013-04-15 15:16:52 +02:00
Nikolay Sivov 58bbe5ac4c msi: Free records on error paths (Coverity). 2013-04-01 12:32:37 +02:00
Alexandre Julliard 33aa647e64 msi: Avoid intermediate variables when calling create_record. 2013-03-13 16:27:50 +01:00
Hans Leidekker b36a26d65a msi: Don't attempt to patch files from disabled components. 2013-02-27 19:23:14 +01:00
Hans Leidekker aeb7d70ffd msi: Handle more than one patch per file. 2013-02-27 19:23:13 +01:00
Andrew Talbot 40f3a9fa59 msi: Avoid signed-unsigned integer comparisons. 2013-02-18 10:33:17 +01:00
Hans Leidekker bfe5e58d3a msi: Don't remove products if msidbUpgradeAttributesOnlyDetect is set. 2013-02-15 16:56:19 +01:00
Hans Leidekker 9779c4b5ea msi/tests: Move a couple of tests from install.c to msi.c. 2013-02-13 16:13:54 +01:00
Frédéric Delanoy 72989b5b03 msi: Fix memory leak (coverity). 2013-02-06 10:11:32 +01:00
Hans Leidekker 07be9f0585 msi: Improve parsing of the supported platforms string. 2013-01-31 16:32:50 +01:00
Hans Leidekker d4e9b2cd0f msi: Fix the return value of MsiGetFileVersion for some corner cases. 2013-01-31 16:32:47 +01:00
Hans Leidekker cafbad3feb msi: Don't fail if the directory already exists in MsiCreateAndVerifyInstallerDirectory. 2013-01-31 16:32:35 +01:00
Hans Leidekker 166a7e993c msi: Set _BrowseProperty to INSTALLDIR. 2013-01-30 17:19:39 +01:00
Hans Leidekker 8df6708af4 msi: Avoid a crash in msi_dialog_handle_event. 2013-01-30 17:19:37 +01:00
Hans Leidekker b637d4ca94 msi: Remove const from integer parameters. 2013-01-21 16:28:13 +01:00
Hans Leidekker 5b642da8cb msi: Execute concurrent installers in a separate process. 2013-01-21 16:27:57 +01:00
Hans Leidekker a248f4f001 msi: Set the OriginalDatabase property after applying transforms, not before. 2013-01-21 16:27:41 +01:00
Hans Leidekker 5891ce25e5 msi: Implement MsiQueryFeatureStateExA/W. 2013-01-09 17:39:33 +01:00
Hans Leidekker 6488a6a5e4 msi: Extend registry helpers to support opening the features key for a specific user. 2013-01-09 17:39:32 +01:00
Hans Leidekker 61db36556a msi: Fix a test failure on Windows 8 and conform to the more recent behavior. 2012-12-19 14:38:58 +01:00
Daniel Jelinski bd59df8ddd msi: Do not convert MaskedEdit contents to uppercase. 2012-12-14 11:57:11 +01:00
Michael Stefaniuc 62029ff586 msi: Use FIELD_OFFSET for the size of structs with a varlength array. 2012-12-13 18:38:47 +01:00
Hans Leidekker c66b78a810 msi: Don't set the Preselected property for a full reinstall. 2012-12-11 20:45:42 +01:00
Nikolay Sivov af5e73572a msi: Fix a stream data leak on error (Coverity). 2012-12-10 11:24:25 +01:00
Andrew Talbot b1d4793344 msi: Remove unused variables. 2012-11-22 11:55:09 +01:00
Frédéric Delanoy fcbc5cc5bb msi: Fix a couple of leaks (coverity). 2012-11-20 13:32:49 +01:00
Hans Leidekker ed4ce217d3 msi: Don't set the REINSTALL property if the product will be patched. 2012-11-19 16:35:36 +01:00
Frédéric Delanoy 098b3c7294 msi: Fix leaks in ITERATE_InstallService (coverity). 2012-11-16 19:27:23 +01:00
Frédéric Delanoy cac26d47a0 msi: Fix leaks in stop_service_dependents (coverity). 2012-11-16 19:26:50 +01:00
Nikolay Sivov 3b0179cbde msi: Remove unnecessary casts and argument from script site creation helper. 2012-11-15 12:20:28 +01:00
Nikolay Sivov 194c30d11f msi: Make it clear where script type mask comes from. 2012-11-15 12:19:58 +01:00
Nikolay Sivov eebde117ca msi: COM cleanup for IActiveScriptSite. 2012-11-15 12:19:52 +01:00
Nikolay Sivov e87c3b4b00 msi: Store object function pointers with type id. 2012-11-14 19:22:00 +01:00
Nikolay Sivov e726b54c87 msi: Cache ITypeInfo instances for automation objects instead of reloading every time. 2012-11-14 19:19:36 +01:00
Michael Stefaniuc dad2967943 msi: Don't over-allocate memory for a MSISELECTVIEW. 2012-11-12 13:17:00 +01:00
Michael Stefaniuc 51013ad278 msi: Use FIELD_OFFSET to calculate the size of structs with variable length array. 2012-11-09 17:10:37 +01:00
Hans Leidekker 9c431b6737 msi: Avoid a string copy when comparing SQL keywords. 2012-11-09 17:10:15 +01:00
Hans Leidekker e15121771c msi: Fix use of uninitialized variables. 2012-11-09 17:09:02 +01:00
Hans Leidekker b036ee6309 msi: Register dlls in a separate process. 2012-11-07 18:12:10 +01:00
Hans Leidekker e2900c23c7 msi: Make sure either the REINSTALL or the REMOVE property is set when the product is already installed. 2012-11-07 18:12:09 +01:00
Hans Leidekker 26299647f7 msi: Remove a component regardless of its install state, unless it's a permanent component. 2012-11-07 18:12:09 +01:00
Hans Leidekker 462ec1ba43 msi: Return correct length for the empty string from deformat_string. 2012-11-07 18:12:08 +01:00
Frédéric Delanoy 85bf1082ce msi: Fix some leaks (coverity). 2012-11-07 13:56:03 +01:00
Hans Leidekker cfadbddcaf msi: Avoid a crash when target paths have not yet been resolved. 2012-11-06 20:00:27 +01:00
Frédéric Delanoy 84541cc5e3 msi: Fix a leak (coverity). 2012-11-05 17:44:19 +01:00
Hans Leidekker 7d3f903db1 msi: Fix handling of REG_MULTI_SZ values in the WriteRegistryValues action. 2012-11-05 17:44:18 +01:00
Hans Leidekker 570322069c msi: Preserve strings with embedded nulls in the record formatting implementation. 2012-11-05 17:44:18 +01:00
Hans Leidekker 8d21f998c3 msi: Fix handling of strings with embedded nulls in msi_addstring. 2012-11-05 17:44:17 +01:00
Hans Leidekker 31ea3f44dd msi: Return length for the empty string in msi_string_lookup. 2012-11-02 19:47:30 +01:00
Hans Leidekker af08a2f6ba msi: Pass string length to msi_set_property in ACTION_CustomAction. 2012-10-29 14:41:55 +01:00
Hans Leidekker 52a87c9054 msi: Add a length parameter to msi_strcpy_to_awstring and use it where appropriate. 2012-10-29 14:41:49 +01:00
Hans Leidekker 2a31a3c057 msi: Don't create a copy of deferred custom action data. 2012-10-29 14:41:44 +01:00
Hans Leidekker 929d234072 msi: Return length instead of size from deformat_string. 2012-10-29 14:41:41 +01:00
Hans Leidekker 0f1d3474a8 msi: Add a length parameter to msi_set_property and use it where appropriate. 2012-10-29 14:41:36 +01:00
Hans Leidekker a7ff2818fe msi: Preserve strings with embedded nulls when copying from a record to the string table. 2012-10-29 14:41:21 +01:00
Hans Leidekker 9588deb54c msi: Preserve strings with embedded nulls when copying from the string table to a record. 2012-10-29 14:41:16 +01:00
Hans Leidekker 32aed60786 msi: Preserve strings with embedded nulls in the record implementation. 2012-10-29 14:41:04 +01:00
Hans Leidekker 8d28cc0ac7 msi: Get rid of MSI_RecordSetStringA. 2012-10-29 14:40:55 +01:00
Hans Leidekker 9aa23c6c77 msi: Store string length in the record structure. 2012-10-29 14:40:46 +01:00
Hans Leidekker 6950ac1d1c msi: Add support for storing strings with embedded nulls in the string table. 2012-10-29 14:40:40 +01:00
Hans Leidekker 652863f4d5 msi: Add more tests for embedded nulls in string property values. 2012-10-29 14:40:31 +01:00
Hans Leidekker a1c4d2c977 msi: Add a test for embedded nulls in string property values. 2012-10-29 14:40:18 +01:00
André Hentschel 1e361aa8cb msi/tests: Make multiline macros blocks (coverity). 2012-10-24 11:33:00 +02:00
Jacek Caban 3b9a13e94c msi: Make script Session object visible by name. 2012-09-18 14:48:24 +02:00
Jacek Caban 645ce64196 msi: Choose the right IActiveScriptParse* interface based on process type. 2012-09-18 14:48:19 +02:00
Hans Leidekker dd8f54a49f msi: Don't reinstall components shared with other products. 2012-09-13 13:56:39 +02:00
Hans Leidekker 1ee3be6e80 msi: Only remove a component if the number of clients drops to zero. 2012-09-11 18:07:29 +02:00
Marcus Meissner b9550ad352 msi: Move free after last usage (Coverity). 2012-09-06 18:23:40 +02:00
Jacek Caban e679471885 Always define WIDL_C_INLINE_WRAPPERS. 2012-08-28 14:41:13 +02:00
Michael Stefaniuc 5974e9d120 msi/tests: Avoid a TRUE:FALSE conditional expression. 2012-08-15 12:12:49 +02:00
Hans Leidekker 842525f423 msi: Try the registered install location first when resolving the target directory. 2012-08-13 11:45:15 +02:00
Hans Leidekker b7cefc9997 msi: Avoid an out of bounds access in msi_build_directory_name. 2012-08-13 11:45:11 +02:00
Hans Leidekker f180de40dd msi: Implement the RemoveExistingProducts standard action. 2012-07-31 18:01:54 +02:00
Vincent Povirk b8812afd33 msi: Stub Migrate10CachedPackagesW. 2012-07-31 10:52:53 +02:00
Hans Leidekker 6a588baaf7 msi: Use inline wrappers for calling COM methods. 2012-07-27 17:05:32 +02:00
Hans Leidekker 108d5927d0 msi: Use the right interface to call 32-bit and 64-bit custom action scripts. 2012-07-27 17:05:32 +02:00
Detlef Riekenberg a7e1b7c6ea msi/tests: Use always static binding for GetTokenInformation. 2012-07-27 17:05:20 +02:00
Hans Leidekker cbd83d0307 msi/tests: Mark some test results as broken. 2012-07-16 19:34:40 +02:00
Hans Leidekker 32fa9db888 msi: Don't hard-code the ServicePackLevel property. 2012-07-09 15:06:42 -04:00
Hans Leidekker f55ee1a212 msi: Don't crash if no working directory is specified for custom action type 34. 2012-07-09 15:06:35 -04:00
Francois Gouget 7f0cfac5cc msi/tests: Get rid of unneeded function typedefs. 2012-06-15 18:35:37 +02:00
Hans Leidekker a17ca16495 msi: Keep assembly caches loaded until the package is destroyed. 2012-06-12 10:22:24 +02:00
Hans Leidekker 3480ccbbb4 msi: Always load mscoree.dll from the system directory. 2012-06-12 10:22:15 +02:00
Hans Leidekker 458f6b7ccd msi: Don't fail if no .NET runtime is available. 2012-06-12 10:22:04 +02:00
Hans Leidekker f6f1bfd6fb msi/tests: Use only uppercase characters for the PID_REVNUMBER property. 2012-06-12 10:21:55 +02:00
Hans Leidekker 0ed61000d3 msi: Support registry key names that exceed 255 characters. 2012-06-11 21:03:48 +02:00
Hans Leidekker fc2c8a215f msi: Fail if a registry key cannot be created. 2012-06-11 21:03:48 +02:00
Hans Leidekker fd0c2dabdf msi: Ignore the value if a registry value name is special. 2012-06-11 21:03:47 +02:00
Hans Leidekker f0ea60049c msi: Add support for 64-bit registry components. 2012-06-11 21:03:47 +02:00
Hans Leidekker e16bcda486 msi: Don't create empty values for special registry entries. 2012-05-31 12:37:22 +02:00
Hans Leidekker c959e38625 msi: Don't terminate the string in msi_id2stringA.
This makes sure that the last string can be fully written when saving the
string table.
2012-05-31 12:37:22 +02:00
Hans Leidekker 35b9594244 msi: Add support for version 4.0 of the .NET runtime. 2012-05-17 17:21:42 +02:00
Hans Leidekker d6105eaa1f msi: Use the correct function pointer in msi_init_assembly_caches. 2012-05-17 17:21:28 +02:00
Hans Leidekker 11daa6aad5 msi: Break out of the loop as soon as the assembly is detected in msi_load_assembly. 2012-05-17 17:21:25 +02:00
Michael Stefaniuc 49add07795 msi/tests: Test the correct return values. 2012-05-17 10:18:11 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Hans Leidekker 4b32c09376 msi: Add support for the ActionInfo progress message subtype. 2012-05-15 16:26:38 +02:00
Hans Leidekker 6c7d0993f0 msi: Add support for the ProgressAddition progress message subtype. 2012-05-15 16:26:37 +02:00
Hans Leidekker 022915f75b msi: Don't hide failure of script custom actions. 2012-05-15 16:26:37 +02:00
Hans Leidekker 32c7a52f5c msi: Resolve the target path for the ODBC driver file if necessary. 2012-05-08 16:21:40 +02:00
Alexandre Julliard 720a37d778 msi/tests: Skip MsiEnumProductsEx tests if not supported. 2012-05-03 23:31:43 +02:00
Francois Gouget 1bf438ab29 msi: Tweak msiexec's usage message. 2012-05-03 11:51:38 +02:00
Hans Leidekker 9700e9c7a6 msi: Fix a couple of DispGetParam calls. 2012-05-01 14:50:03 +02:00
Hans Leidekker c3e3c81bfb msi: Add the Session object as a global member to custom action scripts. 2012-05-01 14:49:58 +02:00
Hans Leidekker 52738e4f93 msi: Remove a workaround for missing Windows Script interfaces. 2012-05-01 14:49:52 +02:00
Hans Leidekker 605e0b7b41 msi: Add support for uninstalling global assemblies. 2012-04-30 11:02:28 +02:00
Hans Leidekker 89e95aa92c msi: Avoid a crash in get_registered_local_package. 2012-04-26 19:26:41 +02:00
Hans Leidekker fde66de6a5 msi: Don't free cached tables in MsiDatabaseCommit. 2012-04-26 19:26:37 +02:00
Hans Leidekker c8bb335990 msi: Check supported languages in the AppSearch action. 2012-04-23 17:55:28 +02:00
Hans Leidekker 52f3d5bead msi: Remove child folders first in the RemoveFolders action. 2012-04-23 17:55:21 +02:00
Hans Leidekker 2e5bf9ca06 msi: Dynamically allocate the path buffer in MsiQueryComponentStateW. 2012-04-23 17:55:18 +02:00
Hans Leidekker cf1cb30dfa msi: Initialize hkey in msi_comp_find_prod_key. 2012-04-23 17:55:14 +02:00
Hans Leidekker f1af03fa16 msi: Reduce the indentation level in ACTION_GetComponentInstallStates. 2012-04-23 17:55:10 +02:00
Francois Gouget f5a5cc067a msi: Make create_record() static. 2012-04-20 12:00:33 +02:00
Hans Leidekker a7137ef035 msi: Remove an unneeded assignment. 2012-04-20 11:59:43 +02:00
Hans Leidekker 2b9be70975 msi/tests: Fix some leaks. 2012-04-20 11:59:39 +02:00
Hans Leidekker 2e51464e4d msi/tests: Add a test for MsiEnumProductsEx. 2012-04-20 11:59:35 +02:00
Hans Leidekker fc73c9db0a msi: Fix install state detection for registry components. 2012-04-20 11:59:26 +02:00
Robert van Herk f87c4a36dd msi: Fixed MsiGetFileHashW for empty files. 2012-04-06 20:40:59 +02:00
Hans Leidekker dd205230a0 msi: Keep the UI level fixed during the lifetime of a package. 2012-04-05 17:53:20 +02:00
Hans Leidekker 350449fc43 msi: Suspend the installation if an action sets MSIRUNMODE_REBOOTNOW. 2012-04-02 13:30:41 +02:00
Hans Leidekker 15ee85dee8 msi: Implement MsiGet/SetMode(MSIRUNMODE_REBOOTNOW). 2012-04-02 13:30:36 +02:00
Hans Leidekker a6b3d77021 msi: Use the state parameter passed to MsiSetMode. 2012-04-02 13:30:28 +02:00
Hans Leidekker 89c80c41ea msi: Rename the need_reboot flag to need_reboot_at_end. 2012-04-02 13:30:24 +02:00
Hans Leidekker f01cd3a36d msi/tests: Add tests for MsiEnumComponents and MsiEnumComponentsEx. 2012-04-02 12:34:38 +02:00
Hans Leidekker 25b7228274 msi: Reimplement MsiEnumComponents on top of MsiEnumComponentsEx. 2012-04-02 12:34:28 +02:00
Hans Leidekker 8cebf01702 msi: Implement MsiEnumComponentsEx. 2012-04-02 12:34:24 +02:00
Hans Leidekker 8ea5266915 msi: Detect installed side-by-side assemblies. 2012-03-30 10:45:26 +02:00
Hans Leidekker ccad8e9d80 msi/tests: Reduce code duplication in the feature/component state tests. 2012-03-28 19:05:02 +02:00
Hans Leidekker 3f1e3008ea msi: Clear the cert pointer in MsiGetFileSignatureInformation. 2012-03-28 17:37:44 +02:00
Hans Leidekker d351a9999e msi: Also set the Intel property on 64-bit processors. 2012-03-28 17:37:41 +02:00
Andoni Morales Alastruey 342fcb6198 msi: Implement MSIMODIFY_MERGE function in TABLE_modify. 2012-03-28 11:44:52 +02:00
Hans Leidekker 280af52666 msi: Mask off modifiers before setting the UILevel property.
Spotted by Aric Stewart.
2012-03-26 18:15:03 +02:00
Hans Leidekker 9b2b760ea9 msi: Get the UI level from the global variable instead of the property. 2012-03-26 18:15:03 +02:00
André Hentschel c000cbaf49 msi: Allow ARM installations. 2012-03-26 12:41:27 +02:00
Hans Leidekker 45a62d53b6 msi: Restrict the match on files from cabinets to files that have not been installed. 2012-03-16 16:27:38 +01:00
Hans Leidekker c98bf1b57b msi: Fix deleting services on installation.
Based on a patch by Berhard Loos.
2012-03-13 13:30:11 +01:00
Hans Leidekker fa2420d696 msi: Perform a case insensitive match on filenames from cabinets. 2012-03-12 16:37:24 +01:00
Hans Leidekker 0f40d2624d msi: Reimplement MsiEnumProducts on top of MsiEnumProductsEx. 2012-03-12 16:37:24 +01:00
Hans Leidekker a4c20dc437 msi: Implement MsiEnumProductsEx. 2012-03-12 16:37:23 +01:00
Hans Leidekker 531cab9feb msi: Deformat the description field of INSTALLMESSAGE_ACTIONDATA messages. 2012-03-12 16:37:22 +01:00
Hans Leidekker 98c621c1bf msi: Use the return value of IXMLDOMNode_get_text (clang). 2012-02-06 10:19:37 -06:00
Hans Leidekker bb0b467366 msi: Avoid a null pointer dereference in MsiGetFileVersionW (clang). 2012-02-06 10:19:30 -06:00
Hans Leidekker bca0fd6a55 msi: Follow the parent state for preselected features unless the parent is an advertised feature. 2012-02-05 09:38:12 -06:00
Stefan Leichter f3caa76846 msi: Update version resource. 2012-01-30 20:44:49 +01:00
Frédéric Delanoy ca4fdc57ed msi: Avoid dead code in parse_prop (Coverity). 2012-01-30 11:59:44 +01:00
Frédéric Delanoy 8ef373a7f2 msi: Avoid dead code in parse_prop (Coverity). 2012-01-25 11:24:58 +01:00
Hans Leidekker c8e8f44168 msi: Use the column count specified in the table transform data.
It can be smaller than the number of columns found in the table meta data.
2012-01-24 16:57:32 +01:00
Francois Gouget 47f45d793d Use a single space after a full stop to follow the Windows GUI guidelines. 2012-01-23 16:07:03 +01:00
Hans Leidekker fcce720a2f msi: Don't evaluate msidbFeatureAttributesFollowParent when features are preselected. 2012-01-23 15:59:54 +01:00
Hans Leidekker 09a49fd784 msi: Pass the file identifier instead of the filename in action data for SelfRegModules/SelfUnregModules. 2012-01-20 16:01:48 +01:00
Hans Leidekker d20c69c54d msi: Don't parse the format string when building the shortcut target path.
It's no longer necessary because target paths are always normalized.
2012-01-19 21:08:51 +01:00
Hans Leidekker 9336c10619 msi: Make sure target paths are normalized.
Fix for the Lotus Notes 6.5.1 installer.
2012-01-18 16:25:21 +01:00
Nikolay Sivov 3b60c2c0d1 msi: Support test for aplicable patch of MSIPATCH_DATATYPE_XMLPATH type. 2012-01-18 12:37:37 +01:00
Nikolay Sivov 123eba2801 msi: Support MSIPATCH_DATATYPE_XMLBLOB when testing for applicable patch. 2012-01-18 12:37:37 +01:00
Nikolay Sivov 5cbe5faf49 msi: Create the rest of objects with separate helpers. 2012-01-17 19:13:55 +01:00
Nikolay Sivov 576aa0e6d0 msi: Use data table for dispid tests. 2012-01-16 13:13:23 +01:00
Nikolay Sivov 8a012ff4f7 msi: Implement list on top of general object. 2012-01-16 13:13:13 +01:00
Nikolay Sivov 07058e0068 msi: Add a helper to create database object. 2012-01-16 13:12:51 +01:00
Nikolay Sivov ff3ed0e5ea msi: Add null terminator to typelib name. 2012-01-16 13:12:41 +01:00
Nikolay Sivov b79311b175 msi: Create installer object initializing automation object data. 2012-01-16 13:12:25 +01:00
Nikolay Sivov 9505a1bf28 msi: Implement session object directly on top of automation object. 2012-01-16 13:12:14 +01:00
Nikolay Sivov 9687c29cc5 msi: COM cleanup for automation object implementation. 2012-01-16 13:11:28 +01:00
Hans Leidekker bc801f85be msi: Set the SourceDir and SOURCEDIR properties in MsiGetSourcePath. 2012-01-16 12:45:34 +01:00
Hans Leidekker 4ef765cb4e msi: Don't try to ready media for files from a previous installation or files that will be skipped. 2012-01-10 18:29:05 +01:00
Hans Leidekker c7e5f0331f msi: Downgrade an error. 2012-01-10 18:29:04 +01:00
Hans Leidekker b13195ce4e msi: Fix detection of installed global assemblies. 2012-01-10 18:29:04 +01:00
Hans Leidekker b00e7039c5 msi: Execute custom actions in the right script. 2012-01-06 21:57:40 +01:00
Hans Leidekker de11a50b91 msi: Don't crash on secondary root folders in msi_resolve_target_folder. 2012-01-05 20:54:25 +01:00
Hans Leidekker 2a19021610 msi: VolumeLabel and DiskPrompt are optional fields in the Media table. 2012-01-03 18:07:15 +01:00
Hans Leidekker 4def593456 msi: Accept a missing left backquote in SQL identifiers. 2012-01-03 18:07:08 +01:00
Hans Leidekker ca49aae61e msi: Fix handling of single quoted column names in SELECT queries. 2011-12-23 15:12:18 +01:00
Hans Leidekker bde25b2cb4 msi: Use a common function to validate a product ID. 2011-12-23 15:12:11 +01:00
Hans Leidekker ad4f747fa6 msi: Fix changing media for normal files. 2011-12-23 15:12:06 +01:00
Hans Leidekker 8cc5561fbf msi: Don't run the rollback script in reinstall mode. 2011-12-13 18:59:15 +01:00
Hans Leidekker 8a5c700d78 msi: Pass REINSTALL and REINSTALLMODE properties on the command line in MsiReinstallFeatureW. 2011-12-13 18:59:14 +01:00
Hans Leidekker 12e106613a msi: Don't set the LOGVERBOSE property in MsiReinstallFeatureW. 2011-12-13 18:59:14 +01:00
Hans Leidekker 1f56b60cc4 msi: Don't set the Installed property in MsiReinstallFeatureW.
This property will be set later.
2011-12-13 18:59:13 +01:00
Hans Leidekker 00477d601e msi: Support all install contexts in MsiReinstallFeatureW. 2011-12-13 18:59:13 +01:00
Hans Leidekker 973e86b844 msi: Move some traces from implementations to entry points. 2011-12-13 18:59:12 +01:00
Hans Leidekker 0f3eb5f689 msi: Format the value name from the RegLocator table. 2011-12-12 15:50:39 +01:00
Hans Leidekker 75242afefd msi/tests: Try harder to remove a shortcut file. 2011-12-06 15:51:01 +01:00
Hans Leidekker cd4432bc9b msi: Make sure to keep a reference to custom action data until the actions are finished. 2011-12-06 15:51:00 +01:00
Hans Leidekker 39b7e6e50c msi: Resolve the target folder if necessary in msi_get_target_folder. 2011-12-01 14:18:22 +01:00
Hans Leidekker 959ebdb118 msi: Split up delete_reg_key_or_value. 2011-12-01 14:18:14 +01:00
Francois Gouget 51a256e65f Assorted spelling fixes and wording tweaks. 2011-11-28 16:40:50 +01:00
Hans Leidekker 3ad3a184d5 msi: Perform a case insensitive match on the volume label. 2011-11-22 12:43:59 +01:00
Francois Gouget 7238a78805 msi: Delete the handle static critical sections when unloading the dll. 2011-11-17 11:37:49 +01:00
Hans Leidekker a100550383 msi: Trace the exit code from custom action processes. 2011-11-14 13:10:19 +01:00
Hans Leidekker 353016f92f msi: Process messages while waiting for custom actions to complete. 2011-11-14 13:10:19 +01:00
Andrew Talbot 3358b541ac msi: Remove extraneous braces from switch statement. 2011-11-07 11:53:56 +01:00
Hans Leidekker eb7d8b92cb msi: GetComputerName returns ERROR_BUFFER_OVERFLOW when the buffer is too small. 2011-11-03 13:09:07 +01:00
Hans Leidekker 5266f34c3c msi: Set the ComputerName property. 2011-11-01 12:13:46 +01:00
Hans Leidekker 936c14f87f msi: Handle some more message types in MSI_ProcessMessage. 2011-11-01 12:12:59 +01:00
Hans Leidekker 899e85ab26 msi: Fix the log mode for progress messages. 2011-11-01 12:12:55 +01:00
Hans Leidekker 392bd2b7a2 msi/tests: Fix a skip message. 2011-10-27 14:21:31 +02:00
Hans Leidekker 841a747409 msi/tests: Fix some test failures on win2k. 2011-10-27 14:21:27 +02:00
Hans Leidekker 319081cbf6 msi: Wait up to 30 seconds for services to start up. 2011-10-27 14:21:23 +02:00
Bernhard Loos 4ac1e8e034 msi: Always use WHEREVIEW for sorting. 2011-10-20 20:48:26 +02:00
Bernhard Loos 0fd4943277 msi: Get rid of JOINVIEW. 2011-10-20 20:48:26 +02:00
Bernhard Loos 4383aafadd msi: Reorder tables to optimize condition evaluation. 2011-10-20 20:48:26 +02:00
Vincent Povirk 2556173f20 msi: Use MsgWaitForMultipleObjectsEx to do waits. 2011-10-13 20:43:20 +02:00
Dan Kegel c77395dc08 msi: Initialize variable to placate static analyzers. 2011-10-13 20:06:46 +02:00
Hans Leidekker e973115a79 msi: Properly build the shortcut target path. 2011-10-11 13:37:50 +02:00
Hans Leidekker cda63b8a38 msi: Don't attempt to patch files if the component action resolves to anything other than INSTALLSTATE_LOCAL. 2011-10-11 13:37:50 +02:00
Michael Stefaniuc 78ebd8f7cf msi: Remove a redundant NULL check before free (Smatch). 2011-10-11 13:37:50 +02:00
Michael Stefaniuc 958eff8e94 msi: Remove a break after return (Smatch). 2011-10-11 13:37:50 +02:00
Michael Stefaniuc 0c5f83040a msi: Move a TRACE before the continue (Smatch). 2011-10-11 13:37:49 +02:00
Andrew Talbot 895b48e9ed msi: Mark fall-throughs in switch statements. 2011-10-06 16:47:33 -05:00
Andrew Talbot 48a6130279 msi: Add a break to a switch statement. 2011-10-06 16:47:30 -05:00
Hans Leidekker 5ea1caa69e msi/tests: Properly preserve pending file renames. 2011-09-27 16:24:26 +02:00
Francois Gouget d2084d5a41 msi/tests: Avoid #if 0 to make sure code still compiles. 2011-09-27 10:58:52 +02:00
Michael Stefaniuc 6074bd51cc msi: Remove casts to the type of the casted variable. 2011-09-23 16:21:26 +02:00
Hans Leidekker ca741823dd msi: Only use Windows platform-specific encoded strings from the font naming table. 2011-09-23 12:39:14 +02:00
Hans Leidekker 19a965f581 msi: Improve font version parsing. 2011-09-23 12:39:10 +02:00