Hans Leidekker
18ebf2c576
msi: Return an error from MsiDatabaseGetPrimaryKeys if the table does not exist.
2010-09-02 18:05:22 +02:00
Hans Leidekker
0032706564
msi: Add stub implementations of MsiBeginTransaction and MsiEndTransaction.
2010-09-02 18:05:22 +02:00
Hans Leidekker
dd7514a38d
msi: Move database initialization to a separate function.
2010-08-27 12:08:33 +02:00
Hans Leidekker
eef54ffe6b
msi: Open the database storage in transacted mode when MSIDBOPEN_CREATE or MSIDBOPEN_TRANSACT is specified.
2010-08-27 12:08:29 +02:00
Hans Leidekker
d411c49dd1
msi/tests: Fix a WoW64 test failure.
2010-08-27 12:08:22 +02:00
Hans Leidekker
44b15b061b
msi: Create the product key if necessary in msi_publish_patches.
...
Fixes a regression caused by c9fb24927d
.
2010-08-27 12:08:16 +02:00
Hans Leidekker
137dfbe80a
msi/tests: Use a different product code in the package tests to avoid cascading test failures.
2010-08-27 12:08:08 +02:00
Hans Leidekker
378bb21f8e
msi: Bump version to 4.5.
2010-08-18 15:31:25 +02:00
Hans Leidekker
5d85497a15
msi: Handle signature filenames in short|long notation.
2010-08-18 15:31:18 +02:00
Hans Leidekker
0c044c10d0
msi/tests: Skip SourceDir tests on win9x.
2010-08-18 15:30:49 +02:00
Hans Leidekker
7c89d4f28f
msi/tests: Use HKEY_CURRENT_USER instead of HKEY_LOCAL_MACHINE for registry tests.
...
Works around test failures on 64-bit Windows where MsiInstallProduct
returns success even though the registry keys specified in the
Registry table are not created.
2010-08-18 15:30:43 +02:00
Hans Leidekker
4102156e0f
msi/tests: Fix some WoW64 test failures.
2010-08-18 15:30:28 +02:00
André Hentschel
428e8a5a01
msi: Prevent cryptic error.
2010-07-30 11:36:01 +02:00
Hans Leidekker
33b6ad7f73
msi/tests: Skip tests if UAC is enabled and the process is not running elevated.
2010-07-26 18:38:31 +02:00
Hans Leidekker
9686c95749
msi/tests: Skip a test if the current user has insufficient rights.
2010-07-26 18:38:31 +02:00
Hans Leidekker
c2c98ae0c2
msi: Synchronize the spec file with version 5.0.
2010-07-23 11:46:23 +02:00
Hans Leidekker
64eec8f9fa
msi: Register dlls directly in the SelfRegModules and SelfUnregModules actions.
2010-07-23 11:46:16 +02:00
Hans Leidekker
bdda3b950c
msi: Warn if a transform file cannot be opened.
2010-07-23 11:46:10 +02:00
Hans Leidekker
2b0c45674f
msi: Add some tests for MsiGetSourcePath.
2010-07-23 11:46:06 +02:00
Hans Leidekker
bd634c0491
msi: Set/unset the SourceDir property at the right stage in the execution sequence.
2010-07-23 11:46:01 +02:00
Hans Leidekker
ad971803da
msi: Never defer standard actions.
2010-07-23 11:45:49 +02:00
Hans Leidekker
ac924566fb
msi/tests: Properly contruct the icon path for win9x.
2010-07-23 11:45:44 +02:00
Hans Leidekker
148887082c
msi/tests: Initialize a string buffer and fix some leaks.
2010-07-23 11:45:39 +02:00
Hans Leidekker
bb5ab26720
msi: Fix a memory leak.
2010-07-23 11:45:35 +02:00
Hans Leidekker
c4bf9fb710
msi/tests: Fix some more wow64 test failures.
2010-07-22 16:10:42 +02:00
Hans Leidekker
c4511481db
msi/tests: Avoid a long timeout in the test for DeleteServices.
2010-07-22 16:10:29 +02:00
Hans Leidekker
10a32a0b7a
msi/tests: Skip tests when the current user has insufficient rights.
2010-07-22 16:10:19 +02:00
Hans Leidekker
dad50e3aa0
msi/tests: Return an error code from helper_createpackage and package_from_db.
2010-07-22 16:09:56 +02:00
Hans Leidekker
21d09ffb43
msi/tests: Fix test failures on wow64.
2010-07-22 16:09:43 +02:00
Hans Leidekker
d8b7a2099e
msi: Downgrade a warning.
2010-07-22 16:09:14 +02:00
Hans Leidekker
06afeec2a5
msi: Make sure properties are updated after applying a patch.
2010-07-22 16:09:09 +02:00
Michael Stefaniuc
7e037305d6
msi: Remove the ignored common resource attributes.
2010-07-22 11:41:40 +02:00
Alexandre Julliard
b86d515ed6
dlls: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:36 +02:00
Hans Leidekker
d99b6d3934
msi: Properly advance the patch pointer in msi_check_product_patches.
...
Fixes patch enumeration when multiple patches are registered for a given product.
2010-07-21 13:24:01 +02:00
Hans Leidekker
409e2d7105
msi/tests: Double null-terminate a REG_MULTI_SZ string.
2010-07-21 13:24:01 +02:00
Hans Leidekker
3929369611
msi: Remove a fixme that no longer applies.
2010-07-21 13:24:01 +02:00
Hans Leidekker
d10208e863
msi: Improve traces in db_get_raw_stream.
2010-07-21 13:24:00 +02:00
Hans Leidekker
fba248642b
msi: Reverse the transform storage list order.
...
This ensures that we use the most recently added stream if another
transform storage contains a stream by the same name. Fixes
wordconv.msp, an update for Word 2007.
2010-07-21 13:24:00 +02:00
Hans Leidekker
424e3a9fb8
msi: Move the component enabled check into the standard actions.
2010-07-21 13:24:00 +02:00
Hans Leidekker
568c7c198c
msi: Set feature states to the installed state if the Preselected property is not set.
2010-07-21 13:24:00 +02:00
Hans Leidekker
c9fb24927d
msi: Publish patches regardless of any features being installed locally.
2010-07-21 13:24:00 +02:00
Hans Leidekker
9b329d5bab
msi: Keep track of the patch filename in apply_registered_patch.
2010-07-20 16:29:45 +02:00
Hans Leidekker
b87271150a
msi: Unpublish the product after running all the actions.
2010-07-20 16:29:45 +02:00
Hans Leidekker
f7aa88fe7d
msi: Store the patch state in the registry.
2010-07-20 16:29:45 +02:00
Hans Leidekker
03cddf9d05
msi: Add a test for MsiSetFeatureState.
2010-07-20 16:29:45 +02:00
Paul Vriens
f2135efe48
msi: Add the Serbian (Cyrillic) translation.
...
Translation by Nenad Vujic <nesa24casa@gmail.com>
2010-07-20 14:53:22 +02:00
Paul Vriens
4662e12164
msi: Add the Serbian (Latin) translation.
...
Translation by Nenad Vujic <nesa24casa@gmail.com>
2010-07-19 14:38:16 +02:00
Andrew Nguyen
93f92d51a4
msi/tests: Skip some source tests if a required product key cannot be created.
2010-07-09 11:41:11 +02:00
Andrew Nguyen
9c850c9f8a
msi/tests: Fix a source test comment.
2010-07-09 11:41:00 +02:00
Andrew Nguyen
abe900a23c
msi/tests: Remove a redundant source test.
2010-07-09 11:40:56 +02:00
Andrew Nguyen
ba180b8600
msi/tests: Free the user SID string buffer with the correct deallocator in the source tests.
2010-07-09 11:40:36 +02:00
Andrew Nguyen
3b79a7b4ac
msi/tests: Skip patch tests if product installation failed.
2010-07-09 11:40:28 +02:00
Andrew Nguyen
f01b9aab09
msi/test: Uninstall the test product when skipping patch tests.
...
This seems to be a reasonable cleanup action.
2010-07-09 11:39:14 +02:00
Andrew Nguyen
577554260e
msi/tests: Delete the test patch file for proper patch test cleanup.
2010-07-09 11:39:10 +02:00
Andrew Nguyen
ff188900f3
msi/tests: Run the automation tests in silent mode to avoid a dialog.
2010-07-09 11:39:07 +02:00
Alexandre Julliard
044669e709
msi/tests: Check the x86 program directory first for installed files.
2010-07-02 14:14:44 +02:00
Alexandre Julliard
bcb869a342
msi/tests: Reset the enumeration index for MsiEnumProducts before testing it.
2010-07-01 13:21:34 +02:00
Gustavo Henrique Milaré
e45330968a
msi: Update Portuguese (Brazilian) translation.
2010-06-25 13:30:33 +02:00
Hans Leidekker
2c20c35d3c
msi: Avoid a crash when the cabinet file must be downloaded.
...
Fixes a regression caused by e5869d5d5c
.
2010-06-23 15:27:05 +02:00
Hans Leidekker
ff0f2b35e1
msi: Add tests for MsiLocateComponent and make them pass.
2010-06-14 14:41:45 +02:00
Hans Leidekker
b4674a3c2b
msi: Don't trace the contents of an output buffer.
2010-06-14 14:41:42 +02:00
Hans Leidekker
67f15e7149
msi: Implement MsiGetFeatureCostA/W.
2010-06-11 15:54:54 +02:00
Hans Leidekker
6b1a1579f6
msi: Update an existing record even if the low bit in the transform mask is set.
2010-06-11 15:54:47 +02:00
Hans Leidekker
73774b3ef8
msi: Disable an optimization in the execution of WHERE clauses.
...
There's no guarantee that the condition strings are in the string table.
2010-06-11 15:54:35 +02:00
Hans Leidekker
15f5b9dca3
msi: Compare file versions as numbers instead of strings.
2010-06-11 15:54:24 +02:00
Alexandre Julliard
04a6a14c1f
msi: Don't allow entering text in a scroll text richedit control.
2010-06-10 14:48:28 +02:00
Hans Leidekker
b8ac327e7e
msi: Display the directory identifier instead of the full path in standard actions.
2010-06-09 16:15:52 +02:00
Hans Leidekker
5ecbc4f8ca
msi: Directly pass the disk id to installfiles_cb.
...
The MEDIAINFO structure is modified by the cabinet_next_cabinet
callback if there's a continuous cabinet in the installer.
2010-06-09 16:14:24 +02:00
Hans Leidekker
dcb501decd
msi: Create directories right before installing files.
2010-06-09 16:12:44 +02:00
Matijn Woudt
1a159dfddc
msi/tests: Testcases for CREATE TABLE.
2010-06-07 15:15:49 +02:00
Andrew Eikum
c99c5a41e9
msi/tests: Fix install tests for Win9x.
2010-06-07 13:44:20 +02:00
Hwang YunSong
761ce56643
msi: Update Korean resource.
2010-06-02 16:01:57 +02:00
Hans Leidekker
e1a63fd5c2
msi: Pass the control name to ControlEvent_SubscribeToEvent instead of uninitialized memory.
2010-05-31 12:46:08 +02:00
Hans Leidekker
35a0461baa
msi: Improve parsing of patch summary information.
2010-05-31 12:46:08 +02:00
Hans Leidekker
d17ebc4032
msi: Advance to the right cabinet in ACTION_MsiPublishAssemblies.
2010-05-31 12:46:08 +02:00
Hans Leidekker
8bfc08771c
msi: Don't keep handles open to the patch database in MSI_ApplyPatchW.
2010-05-31 12:46:08 +02:00
Andrew Eikum
beb0b2bc05
msi: Publish icons into the correct directory.
2010-05-31 12:14:27 +02:00
Hans Leidekker
c35856dd09
msi: End the search for a directory signature if the parent cannot be found.
2010-05-25 13:29:56 +02:00
Hans Leidekker
c2ce561469
msi: Add a test for properties updated by a patch.
2010-05-25 13:29:35 +02:00
Hans Leidekker
c815432a50
msi: Get rid of the goto in MSI_ApplicablePatchW.
2010-05-25 13:29:22 +02:00
Alexandre Julliard
598a25de82
msi: Ignore min/max versions if their values are null.
2010-05-24 20:33:28 +02:00
Sven Baars
23f9b07d6a
msi: Update Dutch translation.
2010-05-24 11:14:52 +02:00
Sven Baars
cc9e357ecf
msi: Fix English translation.
2010-05-24 11:14:44 +02:00
Hans Leidekker
5395c999d2
msi: Add more tests for feature overrides.
2010-05-20 16:25:44 +02:00
Hans Leidekker
e16f187791
msi: Test the reference count on the installer object retrieved from a session object.
2010-05-20 16:25:44 +02:00
Hans Leidekker
2e24d34b22
msi: Fix some leaks in the tests.
2010-05-20 16:25:44 +02:00
Hans Leidekker
7a370c8d7b
msi: Consistently use the allocation macros.
2010-05-20 16:25:44 +02:00
Hans Leidekker
57a6b6fb38
msi: Release the package in MsiGetMode and MsiSetMode.
2010-05-20 16:25:44 +02:00
Hans Leidekker
e5dd509901
msi: Release the package in MsiGetProductPropertyW.
2010-05-20 16:25:44 +02:00
Hans Leidekker
a4c25196b0
msi: Fix memory leaks in deformat_string_internal.
2010-05-20 16:25:44 +02:00
Frédéric Delanoy
2ba53f476c
msi: Update French translation.
2010-05-13 19:44:59 +02:00
Hans Leidekker
e60bf536eb
msi: Improve some traces.
2010-05-12 18:46:35 +02:00
Hans Leidekker
6475c11c1f
msi: Only extract a file when its disk id matches the media disk id.
...
This makes sure that an updated file is extracted from the cabinet stream
included in the patch, instead of the original source.
2010-05-12 18:46:32 +02:00
Hans Leidekker
376c2fd02b
msi: Store the disk id in the MSIFILE structure.
2010-05-12 18:46:28 +02:00
Hans Leidekker
dd305c3700
msi: Set the SourceDir property to the registered source if the product is installed.
2010-05-11 16:28:18 +02:00
Hans Leidekker
41a7f025e4
msi: Avoid A->W conversions in msi_publish_install_properties.
2010-05-11 16:28:12 +02:00
Hans Leidekker
347bb13fc7
msi: Set install properties just once.
2010-05-11 16:28:07 +02:00
Hans Leidekker
4d2fb55e4e
msi: Add a test to show that the InstallSource property is unchanged after an upgrade.
2010-05-11 16:28:02 +02:00
Hans Leidekker
715a506fac
msi: Add more patch registration tests.
2010-05-11 16:27:56 +02:00
Hans Leidekker
06a8cc2a06
msi: Add a test to show that patches are not committed to the local package database.
2010-05-11 16:27:49 +02:00
Gerald Pfeifer
acd9732ffe
msi: Fix the return value of msi_copy_outval in the error case.
2010-05-10 10:10:24 +02:00
Aurimas Fišeras
aa2542bfcd
msi: Update Lithuanian translation.
2010-05-10 10:05:32 +02:00
Detlef Riekenberg
2a9b4e0142
msiexec: Use resource in msi for a help dialog to allow translation.
2010-05-06 17:56:44 +02:00
Hans Leidekker
82d7b04c2c
msi: Apply registered patches in MsiOpenPackage.
2010-05-05 15:27:12 +02:00
Hans Leidekker
881ef98479
msi: Forward MsiDetermineApplicablePatchesA to MsiDetermineApplicablePatchesW.
2010-05-05 15:27:08 +02:00
Hans Leidekker
920fc345ba
msi: Register more patch details.
2010-05-04 13:15:00 +02:00
Hans Leidekker
74641ab8db
msi: Handle non-null product code in MSI_ApplyPatchW.
2010-05-04 13:15:00 +02:00
Hans Leidekker
25460075cc
msi: Add some tests for patch registration.
2010-05-04 13:15:00 +02:00
Hans Leidekker
23eabb44c8
msi: Make a local copy of patch packages.
2010-05-04 13:15:00 +02:00
Gerald Pfeifer
be8d0bbb1e
msi: Remove variable product_code which is not really used from MSI_ApplyPatchW.
2010-05-03 15:38:47 +02:00
Gerald Pfeifer
effda58ad3
msi: Fix return value for ITERATE_RemoveFiles (in the error case).
2010-05-03 15:38:39 +02:00
Sven Baars
2d2823ae44
msi: Fix Dutch translation.
2010-05-03 13:55:21 +02:00
Paul Vriens
1cc32247e0
msi: Update Dutch translation.
2010-05-03 13:54:41 +02:00
Hans Leidekker
162780d112
msi: Support multiple patches per package.
2010-04-29 10:19:40 -05:00
Hans Leidekker
df6b195a1a
msi: Simplify msi_set_context.
2010-04-29 10:19:40 -05:00
Hans Leidekker
c6f281fcf7
msi: Make sure to only open a patch database in msi_apply_patch_package.
2010-04-29 10:19:40 -05:00
Hans Leidekker
73f1294431
msi: Test the contents of some of the system tables before and after patching.
2010-04-29 10:19:40 -05:00
Hans Leidekker
319465831c
msi: Store a copy of the file extension in the MSIMIME structure.
...
Fixes a crash that occurs when the extension foreign key points to nowhere.
Reported by Vincent Pelletier.
2010-04-29 10:19:39 -05:00
Hans Leidekker
7d9d6707c1
msi: Fix some test failures on Windows.
2010-04-29 10:19:39 -05:00
Hans Leidekker
82fdc926a2
msi: Move all file comparisons to CostFinalize.
...
File costing can't be done correctly on upgrades unless we know
which files are going to be overwritten.
2010-04-28 15:04:40 -05:00
Hans Leidekker
9af488d236
msi: Always evaluate component conditions.
...
Fixes a regression caused by 0d770c96fe
.
2010-04-28 15:04:40 -05:00
Hans Leidekker
43f7bc8687
msi/tests: Use a unique product code when testing MsiConfigureFeature parameter validation.
...
This is to avoid ERROR_INSTALL_ALREADY_RUNNING errors on Windows.
2010-04-28 15:04:39 -05:00
Hans Leidekker
d9510f5962
msi: Only set the property in the Reinstall event.
2010-04-28 15:04:39 -05:00
Hans Leidekker
f23bf7a460
msi/tests: Return INVALID_FILE_SIZE from get_pf_file_size if the file can't be opened.
...
So we can distinguish a zero-sized file from a file that doesn't exist.
2010-04-28 15:04:39 -05:00
Hans Leidekker
a5a58910b6
msi: Try to apply a patch to each product it is targeted for.
...
A patch may target multiple products but only one of them needs to
be installed for the patch to succeed. Fixes an Acrobat Reader 9 patch.
2010-04-21 11:57:33 +02:00
Hans Leidekker
e31ee69f37
msi: Rename MSI_GetPropertyW and MSI_SetPropertyW.
...
For consistency with related functions msi_dup_property and msi_get_property_int
and because there is no ANSI version of these functions.
2010-04-21 11:57:33 +02:00
Hans Leidekker
44b7983913
msi: Make MSI_SetPropertyW take a pointer to a database instead of a package.
2010-04-21 11:57:33 +02:00
Hans Leidekker
186f4efa3f
msi: Make msi_get_property_int and friends take a pointer to a database instead of a package.
...
They only operate on a database and this way we can use them before a package is created.
2010-04-21 11:57:33 +02:00
Hans Leidekker
031d2c63e8
msi: Add a test to show that MsiOpenPackage must apply any existing patches.
2010-04-21 11:57:33 +02:00
Octavian Voicu
80878d00da
msi: Sync combo control value with associated property.
2010-04-19 15:13:30 +02:00
Octavian Voicu
857f979468
msi: Fill combo control with items from database.
2010-04-19 15:13:19 +02:00
Octavian Voicu
2793a4fd52
msi: Use standard window class for combo control and add error checking.
2010-04-19 15:12:48 +02:00
Octavian Voicu
9c892430ba
msi: Fix crash when calling MsiGetActiveDatabase with invalid remote handle.
2010-04-19 15:12:41 +02:00
Hans Leidekker
d8504e0550
msi: Handle MSIDBOPEN_PATCHFILE properly in MsiOpenDatabase.
2010-04-19 14:57:49 +02:00
Hans Leidekker
9a9faeffd8
msi: Don't assume unversioned files are present.
2010-04-19 14:57:43 +02:00
Hans Leidekker
f08c355e09
msi: Add beginnings of a test module that concentrates on patches.
2010-04-19 14:57:35 +02:00
Hans Leidekker
8f53405544
msi: Remove the string index parameter from msi_addstringW.
2010-04-19 14:57:02 +02:00
Hans Leidekker
fc15e565d3
msi: Make the name parameter of create_storage and create_stream constant.
2010-04-19 14:56:58 +02:00
Hans Leidekker
111d33b393
msi: Remove unused and redundant name field from STORAGE structure.
2010-04-19 14:56:53 +02:00
Hans Leidekker
109ffd0f97
msi: Make the string reference count a short.
...
This is safe because the reference count is stored in 2 bytes on disk.
(This is commit ff2f894888
reapplied
because of incorrect revert in 88214a72ce
).
2010-04-14 18:00:39 +02:00
Hans Leidekker
33299faae4
msi: Move application of substorage transforms out of msi_parse_patch_summary.
2010-04-13 11:48:30 +02:00
Hans Leidekker
bcc0ad9b07
msi: Release summary information on error in msi_parse_patch_summary.
2010-04-13 11:48:25 +02:00
Hans Leidekker
a0ba56b3bd
msi/tests: Run the RemoveODBC action to unregister the fake drivers.
2010-04-13 11:48:20 +02:00
Hans Leidekker
88214a72ce
msi: Make the string reference count a short.
...
This is safe because the reference count is stored in 2 bytes on disk.
2010-04-13 11:48:14 +02:00
Hans Leidekker
ff2f894888
msi: Make the string reference count a short.
...
This is safe because the reference count is stored in 2 bytes on disk.
2010-04-13 11:46:14 +02:00
Detlef Riekenberg
d4303865e8
msi: Display a MessageBox in MsiMessageBoxEx.
2010-04-12 11:31:12 +02:00
Paul Vriens
55fbf84d26
msi/tests: Remove temporary files.
2010-04-09 11:53:58 +02:00
Hans Leidekker
dd1bef3498
msi: Reset the MsiEnumPatchesExW index on failure.
2010-04-02 15:22:50 +02:00
Hans Leidekker
7aad77ae58
msi: Add tests for registering and unregistering MIME info.
2010-04-02 15:22:49 +02:00
Hans Leidekker
3050cde95e
msi: Implement the UnregisterMIMEInfo standard action.
2010-04-02 15:22:49 +02:00