Commit Graph

1032 Commits

Author SHA1 Message Date
Mike McCormack 869495efd3 msi: Use msi_reg_get_val_str() to read a registry value. 2006-07-21 10:56:40 +02:00
Mike McCormack db1baf7367 msi: Add a stub implementation for MsiProvideQualifiedComponentExA. 2006-07-21 10:56:30 +02:00
Mike McCormack 8bce656fd3 msi: Components with INSTALLSTATE_NOTUSED are considered present. 2006-07-21 10:56:17 +02:00
Mike McCormack a36d06c003 msi: A component with an empty path is not used. 2006-07-21 10:55:48 +02:00
Mike McCormack dfb1f4f55b msi: Use TRACE not FIXME for already implemented functions. 2006-07-21 10:55:37 +02:00
Juan Lang fb6bd2414b msi: Don't use fixed-size buffers in AppSearch action. 2006-07-21 10:49:09 +02:00
James Hawkins ece0ae0a41 msi: Implement the SetInstallLevel event. 2006-07-20 12:51:20 +02:00
James Hawkins de73481c89 msi: Forward MsiSetInstallLevel to an internal MSI_SetInstallLevel that can be used internally. 2006-07-20 12:51:11 +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
Juan Lang 07253473d4 msi: Implement ACTION_AppSearchIni. 2006-07-20 12:09:06 +02:00
Juan Lang 0042c010af msi: Implement searching parent in ACTION_AppSearchReg. 2006-07-19 18:15:49 +02:00
Mike McCormack fee5bee811 msi: Implement MsiConfigureFeatureW. 2006-07-19 18:15:35 +02:00
Mike McCormack 4642221875 msi: Fix the size of base 85 GUIDs. 2006-07-19 18:15:26 +02:00
Mike McCormack 9a9195d6e4 msi: Only load the features and files tables once. 2006-07-19 18:15:21 +02:00
James Hawkins fc56e92657 msi: Add a stub implementation of MsiSourceListClearAll. 2006-07-19 09:47:00 +02:00
James Hawkins 2396e2a59f msi: Sort SelectionTree items by their Display value. 2006-07-19 09:46:31 +02:00
Huw Davies 045d817f4b msi: Create files with the correct file attributes. 2006-07-19 09:44:41 +02:00
Mike McCormack 1aba0d62c6 msi: Check the right pointers for NULL. 2006-07-19 09:42:36 +02:00
Mike McCormack bf57910537 msi: Set properties, not the command line in MsiReinstallFeatureW. 2006-07-19 09:41:06 +02:00
Mike McCormack a7e6864be1 msi: Implement MsiSetInstallLevel. 2006-07-19 09:40:26 +02:00
Juan Lang 2590c081a1 msi: Set name in ACTION_AppSearchGetSignature. 2006-07-19 09:38:24 +02:00
Juan Lang 9e7f182871 msi: Fix silly pointer error. 2006-07-18 11:17:31 +02:00
James Hawkins 7745a831a1 msi: Update the feature components' states when a feature is selected. 2006-07-18 11:17:20 +02:00
Robert Shearman aea12b4695 msi: Fix conversion of path to include nul-termination character in MsiProvideQualifiedComponentA. 2006-07-18 11:13:43 +02:00
Mike McCormack 33ec7eb5e0 msi: Tidy up MsiCreateAndVerifyInstallerDirectory a bit. 2006-07-17 14:46:26 +02:00
Mike McCormack f6170beb47 msi: Implement MsiConfigureFeatureA using MsiConfigureFeatureW. 2006-07-17 14:46:26 +02:00
Mike McCormack 741b47fd26 msi: Cleanup traces, remove unnecessary includes. 2006-07-17 14:46:26 +02:00
Mike McCormack 2ec80faabe msi: Move msi_get_property_int() to helpers.c 2006-07-17 14:46:25 +02:00
Mike McCormack a5a91d17a4 msi: Add support for INSTALLSTATE_ADVERTISED to MsiQueryFeatureState. 2006-07-17 14:46:25 +02:00
Mike McCormack baa6efa56f msi: MsiGetComponentPath cannot return INSTALLSTATE_ADVERTISED. 2006-07-17 14:46:25 +02:00
James Hawkins 6de2ca8459 msi: Add handling for the ListBox dialog control. 2006-07-17 13:46:01 +02:00
Stefan Siebert ded4fbcc3c msi: cabinet_notify - don't fail on files with the same filepath. 2006-07-14 13:32:40 +02:00
Juan Lang 5cf870dae5 msi: Let caller set property in AppSearch. 2006-07-14 13:32:39 +02:00
Mike McCormack c19f9e9c31 msi: Use awstring to return strings from MsiGetProductInfo. 2006-07-14 13:32:39 +02:00
Mike McCormack cd5bac0b3d msi: Read from the registry, not the database in MsiGetProductInfo. 2006-07-14 13:32:39 +02:00
Mike McCormack a3c03fea58 msi: Add some registry reading macro functions. 2006-07-14 13:32:39 +02:00
Mike McCormack 230af9d21f msi: Move version string conversions to registry.c. 2006-07-14 13:32:39 +02:00
Mike McCormack 9917250863 msi: Move some registry helper functions to registry.c. 2006-07-14 13:32:39 +02:00
James Hawkins 1adcf0087a msi: Add handling for the GroupBox dialog control. 2006-07-14 12:27:29 +02:00
James Hawkins 094915ae2c msi: Update the files target paths as well, because a parent directory might have been changed. 2006-07-13 13:48:12 +02:00
Juan Lang ab24569b85 msi: Split up ACTION_AppSearchReg. 2006-07-12 19:28:00 +02:00
Alexandre Julliard eb8a40c368 libs: Merged libwine_unicode into libwine.
Most dlls use libwine_unicode at this point, so there's nothing to
gain by having two separate libraries.
2006-07-11 19:33:22 +02:00
James Hawkins 15ad5de13c msi: Test how SetTargetPath affects the target paths of install files. 2006-07-11 17:15:16 +02:00
James Hawkins 3b506c6408 msi: AppSearchReg shouldn't create the key it's looking for if it doesn't exist. 2006-07-11 17:15:10 +02:00
Alexandre Julliard 88c97d7284 .gitignore: Added wildcards to ignore lex and bison output files. 2006-07-10 21:40:49 +02:00
Alexandre Julliard 77dc0d9be5 .gitignore: Added wildcards to ignore generated resource files. 2006-07-10 21:39:00 +02:00
Alexandre Julliard 0fa8baafcb make_dlls: Recursively ignore .ok files in all tests directories. 2006-07-10 21:26:50 +02:00
Alexandre Julliard edd100b899 make_dlls: Recursively ignore testlist.c in all tests directories. 2006-07-10 21:19:42 +02:00
Alexandre Julliard 5258e061dc make_dlls: Ignore generated import libraries from the top-level .gitignore. 2006-07-10 20:55:58 +02:00
Alexandre Julliard cc2b3b48e6 Take advantage of the recursive nature of .gitignore for Makefile entries.
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Mike McCormack abfe248633 msi: Features may be published but absent. 2006-07-06 15:40:23 +02:00
Mike McCormack ee3e058655 msi: Add a test for MsiGetComponentPath and make it pass. 2006-07-06 15:40:12 +02:00
Mike McCormack 4c0e72eceb msi: Use msi_strcpy_to_awstring to return the string in MsiComponentGetPath. 2006-07-06 15:39:56 +02:00
Mike McCormack 17518ca910 msi: Forward MsiUseFeature to MsiUseFeatureEx. 2006-07-06 12:45:16 +02:00
Dmitry Timoshkov 081563e7ec Avoid non-portable WCHAR[] constructs. 2006-07-05 11:43:55 +02:00
Paul Vriens 8f143f190c Use the return value of register_key_guid. 2006-06-30 21:08:07 +02:00
James Hawkins 3c56550ea5 msi: Read the font color from the database, and use it for the text control. 2006-06-27 21:14:02 +02:00
Andrey Turkin 2ad04cae39 msi: Disable some path validity checks in MsiSetTargetPath. 2006-06-26 13:38:02 +02:00
James Hawkins 566beb788b msi: Add tests for components that aren't associated with a feature. 2006-06-23 11:22:49 +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
Andrew Talbot 685e7007e1 msi/tests: Write-strings warnings fixes. 2006-06-19 09:21:42 +02:00
Andrey Turkin 07edeb8394 msi: Added tests for MsiSetTargetPath. 2006-06-16 14:42:36 +02:00
James Hawkins 36bf71c174 msi: Add tests for MsiInstallProduct. 2006-06-15 18:05:53 +02:00
Mike McCormack 94dc36e5a6 msi: Add test for _Streams table (based on patch by Andrey Turkin). 2006-06-15 12:24:16 +02:00
Mike McCormack 172e183cf3 msi: Don't define COND_SPACE twice. 2006-06-15 11:39:28 +02:00
Mike McCormack 863bc989b9 msi: Add a test for reading long strings. 2006-06-14 12:47:06 +02:00
Mike McCormack 2d323b3df8 msi: Add a test for creating a record with a long string. 2006-06-14 12:47:05 +02:00
Mike McCormack d2dca89c52 msi: Add a test for MsiDatabaseExport. 2006-06-14 12:47:05 +02:00
Mike McCormack cfe36cc81d msi: Fix loading of long strings. 2006-06-13 12:56:42 +02:00
Mike McCormack a28ebdf7d4 msi: Add some more test cases for INSERT. 2006-06-12 16:04:31 +02:00
Mike McCormack 7f64332d11 msi: Add some more MsiFormatRecord tests. 2006-06-12 16:04:19 +02:00
Mike McCormack bef879cb24 msi: Add tests for creating packages and formatting records. 2006-06-12 16:04:08 +02:00
Mike McCormack f29ec238e8 msi: Delete any databases we create at the end of each test. 2006-06-12 16:03:57 +02:00
Mike McCormack 53041d8f73 msi: Fix compilation on msvc6. 2006-06-12 16:03:05 +02:00
Mike McCormack 3c81969a55 msi: Remove an inconsistent test. 2006-06-12 16:02:53 +02:00
Mike McCormack a302ec19bd msi: Fix some test cases to pass against win2k. 2006-06-12 15:56:54 +02:00
Alexandre Julliard b79a53e959 msi: Make some variables static and/or const. 2006-06-12 13:39:59 +02:00
Mike McCormack bbbcc2a1be msi: Add some test cases for "SELECT ... WHERE condition". 2006-06-12 13:21:47 +02:00
Mike McCormack a21f9e5587 msi: Freeing the zero handle always succeeds. 2006-06-12 13:21:47 +02:00
Mike McCormack 15d302c313 msi: Always initialize MsiViewFetch's returned record to zero. 2006-06-12 13:21:47 +02:00
Alexandre Julliard 9a59ee76e4 msi: Make all the ops structures static and const. 2006-06-10 12:02:39 +02:00
Mike McCormack 7500e0feab msi: Update the progress control while installing. 2006-06-09 15:20:25 +02:00
Mike McCormack ea3ab4952b msi: Remove some unnecessary NULL checks. 2006-06-09 15:20:14 +02:00
Vitaly Lipatov 452169243b msi: Add Russian resource file. 2006-06-07 14:31:31 +02:00
EA Durbin 4e66d4791c msi/tests: Fixed a typo. 2006-06-07 14:19:52 +02:00
Huw Davies f5c72fd202 msi: Add some integer condition tests. 2006-06-05 21:00:49 +02:00
Hans Leidekker c077aaf116 msi: Fix some copy/paste bugs in the implementation of condition operators. 2006-06-05 13:50:32 +02:00
Robert Shearman d70db020a6 msi: An empty string is equivalent to nil, so handle this in the optimised WHERE_execute path. 2006-06-05 13:45:53 +02:00
Andrew Ziem f1b449942f msi: Increase verbosity in some failing tests. 2006-05-30 19:30:30 +02:00
Hans Leidekker 4f62bf79dc msi: Implement MsiLocateComponent{A,W}. 2006-05-30 12:23:51 +02:00
Dmitry Timoshkov 0d13a99e79 msi: Translate the resulting string only if the previous call succeeded. 2006-05-25 20:28:45 +02:00
Mike McCormack 2acf800fd4 msi: Fix some pointer to integer casts. 2006-05-25 10:44:44 +02:00
Mike McCormack d20c6cf8ca Fixed more boolean comparisons against TRUE. 2006-05-24 14:38:20 +02:00
Mike McCormack 6df2c04f20 msi: Set a default radio button. 2006-05-24 10:52:42 +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 f7c24f37ad Various trace fixes.
Add trailing '\n's to trace calls.
Remove spaces before '\n'.
2006-05-15 15:05:09 +02:00
Francois Gouget e739ba9551 Assorted spelling fixes. 2006-05-15 15:05:05 +02:00
Robert Shearman 74407105d2 Check the return value from register_key_guid in all the DLL registering code. 2006-05-10 19:38:04 +02:00
Dan Kegel 35f9a4797f msi: Fix missing case in MsiSourceListAddSourceEx. 2006-05-05 17:59:02 +02:00
Mike McCormack 4a7bb647bf msi: Use the source name of the msi package when it fails to copy. 2006-05-05 16:33:25 +02:00
Mike McCormack 3a94011ab6 msi: Clean up memset usage. 2006-04-18 21:13:52 +02:00
Mike McCormack edb58a6d05 msi: Fix a regression caused by some bad logic. 2006-04-18 21:13:46 +02:00
Mike McCormack 1da2fbce95 msi: Don't fall back to the folder's parent if the folder doesn't exist. 2006-04-18 21:13:39 +02:00
Mike McCormack 6607180f64 msi: Simplify create_component_advertise_string() a little. 2006-04-18 16:49:10 +02:00
Mike McCormack a92fe55cce msi: Fix some possible NULL pointer dereferences (Coverity). 2006-04-17 12:38:36 +02:00
Juan Lang 3700913803 msi: Fix possible crash bugs in error path. 2006-04-12 11:18:33 +02:00
Mike McCormack 8232e69492 msi: Add some more MsiFormatRecord tests. 2006-04-11 11:25:32 +02:00
Mike McCormack 819815d66c msi: Use a debug channel to turn on transform debugging. 2006-04-07 20:00:45 +02:00
Mike McCormack 604cdff911 msi: Remove broken volume management code. 2006-04-07 12:57:52 +02:00
Mike McCormack ccdd0869a1 msi: Fix a logic error. 2006-04-07 11:45:47 +02:00
Mike McCormack ed580a1d85 msi: Avoid accessing a null pointer. 2006-04-07 11:45:41 +02:00
Mike McCormack ed9745b94f msi: Check the correct pointer after allocating memory. 2006-04-07 11:45:34 +02:00
Mike McCormack 85e8d3adf8 msi: Fix possible free of uninitialized pointer. 2006-04-07 11:45:29 +02:00
Mike McCormack 17e2c3cc61 msi: Avoid a crash if a parameter is NULL. 2006-04-06 11:33:17 +02:00
Mike McCormack f537eb241a msi: Improve the string table hash. 2006-04-03 12:15:24 +02:00
Antonio Codazzi 79f89b9c33 msi: Italian language support. 2006-04-03 11:51:55 +02:00
Antonio Codazzi 5f0a136f28 msi: Esperanto language support. 2006-04-03 11:49:03 +02:00
Mike McCormack 886036696a msi: Add stub for the RegisterComPlus and UnregisterComPlus actions. 2006-03-22 21:36:20 +01:00
Mike McCormack e1fdf3e24c msi: Don't crash when logging a record with only one field. 2006-03-22 21:36:16 +01:00
Mike McCormack 06c84c4a42 msi: Show "hidden dialogs" but hide them initially. 2006-03-22 11:20:19 +01:00
Mike McCormack cf4f79e877 msi: Implement custom action type 17. 2006-03-22 11:20:12 +01:00
Mike McCormack c1513be48c msi: Improve handling of short paths. 2006-03-21 16:19:07 +01:00
Mike McCormack 5052dcccf2 msi: Set the InstallerLocation value when registering msi.dll. 2006-03-20 12:27:18 +01:00
Robert Shearman 9f487ba1de msi: Optimise WHERE operations.
Optimise WHERE operations on matching against strings by adding a new
function find_matching_rows to the views, which eliminates the need to
examine every record when executing a query. Implement this function
in the table using a hash table on the ID stored in the data.
2006-03-20 12:03:04 +01:00
Robert Shearman d62aa01ec0 msi: Add a test for MsiFormatRecord with integer fields. 2006-03-20 12:01:43 +01:00
András Kovács fb7921a1d3 msi: Added Hungarian translation. 2006-03-15 11:32:18 +01:00
Mike McCormack fe8cd38812 msi: Remove some unnecessary indent. 2006-03-09 12:50:59 +01:00
Mike McCormack 0b9960a1f9 msi: Make sure to run tests for MsiEvaluateCondition. 2006-03-09 12:50:48 +01:00
Ulrich Czekalla 2ee5a5bf7c msi: When evaluating conditions, if the condition is empty or none is
provided then treat it as being satisfied.
2006-02-24 11:21:59 +01:00
Robert Shearman 4ac8567497 msi: Fix heap overflow in ITERATE_CreateShortcuts. 2006-02-22 22:15:54 +01:00
Robert Shearman ecc5c18f4e msi: Init size before passing to RegEnumValue. 2006-02-22 22:15:41 +01:00
Robert Shearman e664435f50 msi: Always set a value for intype in ready_volume.
Remove a memory leak.
2006-02-22 22:15:26 +01:00
Robert Shearman 66c9cbbe0f msi: Fix heap overflow in save_string_table.
Fix heap overflow caused by not accounting for the dummy first item,
which contains the codepage.
2006-02-22 22:15:12 +01:00
Ulrich Czekalla 9d389ec03f msi: Implement MsiSourceListAddSource. 2006-02-22 11:32:58 +01:00
Robert Shearman a911ea0fd7 msi: Fix bison warnings by providing precedence rules for expressions
and by removing a redundant expression case.
2006-02-07 16:24:51 +01:00
Fatih Aşıcı 7fca8f6c72 msi: Turkish translation. 2006-02-06 13:04:40 +01:00
Mike McCormack 43b27144f0 msi: Add an implementation of MsiGetDatabaseState. 2006-01-30 14:56:52 +01:00
Dmitry Timoshkov 57a579ffcd Make more arrays const. 2006-01-24 14:00:32 +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
Robert Shearman 04f547dc50 msi: Support msidbControlAttributesSunken. 2006-01-23 11:55:33 +01:00
Robert Shearman 33fa9d08dd msi: Only print fixme for progress attribute once.
Since setting the Progress attribute is done quite frequently, don't
flood the user with messages about it being unimplemented.
2006-01-23 11:55:19 +01:00
Mike McCormack 477bce38dc msi: Eliminate a fixed length buffer. 2006-01-16 20:38:28 +01:00
Jeremy White 9d90ef017c msi: gcc 2.95 compatibility fix. 2006-01-13 13:53:16 +01:00
Mike McCormack 848f67e13e msi: Make the MSI SelectionTree control do something useful. 2006-01-11 21:12:06 +01:00
Mike McCormack 891df89ee7 msi: Remove the font when setting a control's text. 2006-01-11 12:12:16 +01:00
Mike McCormack f69d7bf0f3 msi: Count the number of columns requested and allocate that many,
as columns may be select more than once in from a table.
2006-01-10 12:10:19 +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 1acf032a99 msi: Fixed the prototype of MsiDatabaseIsTablePersistent.
Implemented MsiDatabaseIsTablePersistentA via the W function.
2006-01-10 12:09:11 +01:00
Mike McCormack ead00327e9 msi: Unload riched20 after its window is destroyed. 2006-01-06 12:35:09 +01:00
Mike McCormack abbe4b6dd0 msi: Make radio buttons grey out correctly when disabled. 2006-01-06 12:19:33 +01:00
Mike McCormack b9d135a37b msi: Clean trailing and leading spaces from path segments. 2006-01-06 12:19:22 +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 40a76a58e3 msi: Add a stub for MsiGetLastErrorRecord. 2006-01-04 14:51:05 +01:00
Mike McCormack 576b8a5920 msi: Fixes for the MaskedEdit control.
Allow MaskedEdit masks that aren't enclosed with <>.
Allow the MaskedEdit's edit controls to scroll a bit in case things
don't line up.
2006-01-04 14:49:50 +01:00
Marcus Meissner 73b7900b8b msi: Report the commandline that failed to start in ERR()s. 2006-01-03 17:35:41 +01:00
Mike McCormack 00a7faa377 msi: Subclass the Richedit control.
Send a "DoAction" control event when the user scrolls the text.
2006-01-03 12:15:04 +01:00
Mike McCormack a0f88f7a3e MSI: Improve the MsiGetMode stub a little. 2006-01-03 12:12:15 +01:00
Mike McCormack 188365e2f0 msi: Implement the Reset control event. 2006-01-03 12:12:09 +01:00
Francois Gouget 38884e0347 Small documentation tweaks to avoid winapi_check warnings. 2006-01-03 12:10:09 +01:00
Mike McCormack b7270b8c2d msi: Change some FIXME messages to comments. 2005-12-31 13:18:11 +01:00
Mike McCormack 04a086ad65 msi: Define the property "Intel" if we're running on an Intel processor. 2005-12-31 13:14:34 +01:00
Mike McCormack f24a9e2a24 msi: Add stub actions for CCPSearch and RMCCPSearch. 2005-12-31 13:14:23 +01:00
Bill Medland b56ed22277 msi: Prevent array underflow in MsiFormat when measuring with zero-length buffer. 2005-12-21 21:19:47 +01:00
Bill Medland e0d4df6bb7 msi: Use a default dialog font if nothing is specified. 2005-12-20 11:59:23 +01:00
Magnus Olsen a06aa5e996 msi: Fixed deformat_environment to not cut off string. 2005-12-19 18:17:28 +01:00
Christian Gmeiner e02e539c1e msi: Implemented DllCanUnloadNow. 2005-12-05 20:39:33 +01:00
Huw Davies 0d13aeb26e msi: Fix MsiProvideQualifiedComponentW spec file entry. 2005-12-05 20:38:18 +01:00
Robert Shearman 2d5dc32f35 The buffer sizes in the documentation for MsiDecomposeDescriptorW don't
include the NULL terminator, so fix this.
2005-11-30 12:02:06 +01:00
Mike McCormack 2a6d007c65 If a source directory doesn't exist, use the install root instead. 2005-11-28 10:37:08 +01:00
Mike McCormack 6a976373b3 Handle the ^ character in MaskEdit controls. 2005-11-28 10:36:54 +01:00
Alexandre Julliard 0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Mike McCormack 9fac484928 Make all source directories at the root of the install. 2005-11-24 19:22:44 +01:00
YunSong Hwang 68baacc859 Update Korean translations. 2005-11-21 12:01:19 +00:00
Mike McCormack 77da201e8f Loop around calling RegQueryValue until we have a big enough string
for both the name and the value.
2005-11-21 11:59:54 +00:00
Mike McCormack 26a6d598bb Convert MsiEnumComponentQualifiers to use msi_strcpy_to_awstring. 2005-11-15 18:12:21 +00:00
Mike McCormack d78dce709e Fix function prototype and spec file entry for
MsiEnumComponentQualifiers.
2005-11-15 16:55:04 +00:00
Mike McCormack dbc8f877fc Only return ERROR_MORE_DATA if there's a buffer to copy a result
into.
2005-11-15 16:53:47 +00:00
Mike McCormack 828280f4fd Set the Installed property if the product is already installed. 2005-11-15 12:00:13 +00:00
Mike McCormack deaae4b8d1 Empty strings are not equal to any number, so all comparisons against
them fail except for tests for non-equalness.
2005-11-14 12:29:10 +00:00
YunSong Hwang 6e20af5dac Add Korean translations. 2005-11-14 11:27:36 +00:00
Mike McCormack fc0cc66b54 Fix comparison of empty properties to numbers and add test cases. 2005-11-14 11:24:14 +00:00
Steven Edwards f5f8cd0846 Partly implement MsiMessageBox[A/W] on top of MessageBoxEx[A/W] 2005-11-11 10:52:53 +00:00
Francois Gouget 0edbaf7e80 Remove spaces before '\n' in traces. 2005-11-10 12:14:56 +00:00
Francois Gouget f4c0524ec6 Assorted spelling and case fixes. 2005-11-10 11:39:07 +00:00
Aric Stewart 5cbd491b7b Use MsiDecomposeDescriptorW in MsiProvideQualifiedComponentExW. 2005-11-10 11:06:04 +00:00
Mike McCormack 5c63332b4f Fix passing of NULL pointers to MsiDecomposeDescriptor and add a
test.
2005-11-09 10:59:20 +00:00
Mike McCormack 454fa4bea0 Make sure we only CoUninitialize after successfully initializing.
Fix the address of the returned IShellLinkDataList interface.
2005-11-09 10:58:24 +00:00
Saulius Krasuckas 056d96939b Win9x returns MSIDBERROR_NOERROR. 2005-11-05 10:42:57 +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
Mike McCormack 1238fda624 Add missing semicolons that caused compile trouble on FreeBSD. 2005-11-03 09:55:30 +00:00
Mike McCormack da20e4d9ca NULL and empty strings are the same in conditions. 2005-11-02 19:58:01 +00:00
Mike McCormack 451ef3a9c3 Stub implementation for MsiAdvertiseScriptA/W. 2005-11-02 19:54:31 +00:00
Mike McCormack 50684c15d5 Create the +msidb debug channel for msi database code. 2005-11-02 14:24:21 +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 76137e55b7 Fix parameter handling in MsiSetTargetPath, and add a test for it. 2005-11-02 11:43:05 +00:00
Mike McCormack fd4a2003db Implement the RemoveFiles action. 2005-11-02 11:42:56 +00:00
Mike McCormack 15e578dfbc Stub implementation for MsiGetFileHashA/W. 2005-11-02 10:56:54 +00:00
Mike McCormack dded8fb7a8 Use an enumeration for file states. 2005-11-02 10:56:42 +00:00
Mike McCormack 4413adf9a9 Define NONAMELESSUNION and NONAMELESSSTRUCT for older compilers. 2005-11-02 10:56:22 +00:00
Mike McCormack 7cd5467377 Make sure to unregister all the classes that were registered when msi
is unloaded, so we can register again cleanly.
2005-10-31 15:43:39 +00:00
Mike McCormack 3e6f31bf0b Fix and test MsiGetProperty and MsiSetProperty. 2005-10-31 14:07:37 +00:00
Mike McCormack 94caa05d07 Improve MsiUseFeatureEx and MsiGetFeatureState a little, add some
simple test cases.
2005-10-31 14:07:20 +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 fa292e4bb2 Add a read-only implementation of the SelectionTree control. 2005-10-30 19:21:24 +00:00
Mike McCormack 7f26cffd6b Simplify register_progid() and remove a fixed length buffer. 2005-10-30 19:17:06 +00:00
Mike McCormack cad9677756 Handle MaskEdit masks containing dashes and other constant
characters.
2005-10-30 19:16:55 +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 06c477fec8 Add a stub implementation of msi.MsiSetMode. 2005-10-30 19:05:13 +00:00
Mike McCormack f8853e4a9f Remove unused package parameter of register_progid_base(). 2005-10-30 19:04:57 +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 13fee293ba Implement MsiGetFeatureUsageA and MsiUseFeature(Ex)A using their W
versions.
2005-10-29 11:36:57 +00:00
Mike McCormack d693f461ba Remove the unused 1st parameter of ACTION_VerifyComponentForAction. 2005-10-29 11:36:48 +00:00
Mike McCormack 96e24c1d82 Explicitly check for MSICONDITION_TRUE being returned from
MsiEvaluateCondition.
2005-10-29 11:29:31 +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
Mike McCormack 9d43994ec2 Add a bunch of tests for MsiEvaluateCondition and make them pass. 2005-10-29 11:08:05 +00:00
Mike McCormack 4007d748dc Make enter and escape trigger the default and cancel buttons in
dialogs.
2005-10-29 11:07:46 +00:00
Mike McCormack 29c93e431d Deleted two buggy functions that incorrectly and inefficiently check
whether a row already exists in a table, and replaced them with a call
to an existing working function that does the same thing correctly.
2005-10-29 11:07:29 +00:00
Mike McCormack ab787f9d89 Remove an incorrect comment and check for 0 being an invalid file
handle.
2005-10-29 11:07:11 +00:00
Mike McCormack d730baf3b1 Extract file directly to their target location, bypassing the need to
use temporary files and move files.
2005-10-29 10:31:06 +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 481bccc8b7 Add an implementation for MsiGetShortcutTargetA/W. 2005-10-29 10:28:30 +00:00
Mike McCormack 7d99f36d03 Fix a memory leak. 2005-10-28 16:41:02 +00:00
Mike McCormack 7bdcc78bcd Put the UI update code for cabinet file into a separate function. 2005-10-28 10:43:50 +00:00
Mike McCormack 8caef535e0 Return an error in MsiGetComponentPathW if passed a null component. 2005-10-28 10:41:20 +00:00
Mike McCormack 029c83d88e Fix error handling in MsiEvaluateCondition. 2005-10-28 10:41:05 +00:00
Mike McCormack 2fa0dbd595 Translate INVALID_HANDLE_VALUE to zero for cabinet handles. 2005-10-28 10:40:54 +00:00
Mike McCormack 923a9e47e7 Fix a memory leak in the cabinet extracting code. 2005-10-28 10:09:59 +00:00
Mike McCormack 0bf9978da2 Fix MsiGetPropertyA/W spec declarations. 2005-10-28 09:39:35 +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 1cd26d25fc Implement transforms. This still includes some debugging code which
can be enabled by setting debug_transform to 1 in the relevant
places.
2005-10-27 12:25:04 +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 6d9c80e8a0 Create an internal handle-free api for reading MSI database summary
information.
2005-10-26 10:10:50 +00:00
Mike McCormack 2cb2316557 Switch back to using IPicture to load images. LoadImage did the
resizing for us, but doesn't handle jpeg files and requires us writing
a temp file, whereas IPicture handles jpeg files and can load directly
from a stream.
2005-10-26 10:10:34 +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 0560ea618e Avoid UpdateWindow, it causes trouble with WS_EX_TRANSPARENT. 2005-09-29 10:48:08 +00:00
Alexandre Julliard 7e22be4d84 We are no longer generating .dbg.c files. 2005-09-29 10:35:58 +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