James Hawkins
6b403d1a31
msi: Move MSITRANSFORM and MSISTREAM and associated methods to the dabatase implementation file as they are database objects/methods.
2009-12-17 12:53:34 +01:00
James Hawkins
a2f5d0e270
msi: Free the cached streams when closing the database.
2009-12-17 12:53:27 +01:00
Hans Leidekker
ef522c5ef0
msi: Clone the open stream instead of trying to open a stream again.
2009-12-16 13:04:35 +01:00
James Hawkins
9ab7d9e21a
msi: Close the original record before copying new data into it.
2009-12-11 12:16:26 +01:00
Rob Shearman
b960b967c9
msi: Improve stub for MsiGetFeatureCost{A, W} and hook the stub into the VolumeCostList dialog control.
2009-11-09 19:43:23 +01:00
Hans Leidekker
808343fb5b
msi: Implement MsiSetExternalUIRecord.
2009-11-03 22:23:08 +01:00
Nate Gallaher
cc366e1282
msi: Add tablename tracking to VIEW_find_column.
...
This fixes the bug where multiple columns of the same name, but
different tables are members of a join. Any attempt to refer to these
columns will resolve to the first available column with that name,
irregardless of any tablename modifier.
2009-10-27 14:01:23 +01:00
Hans Leidekker
8dd3d389b0
msi: Create the local copy before opening the database.
2009-10-20 14:39:55 +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
05e9a1fce8
msi: Add a partial implementation of MsiDetermineApplicablePatchesW.
2009-09-02 14:41:31 +02:00
Hans Leidekker
60b7604aa1
msi: Support opening transform databases.
2009-06-30 13:46:39 +02:00
Hib Eris
cad837c999
msi: Add support for importing binary OBJECTS.
2009-05-27 12:51:10 +02:00
Hib Eris
d9568722aa
msi: Support transforms with binary OBJECTS.
2009-05-26 15:18:09 +02:00
Hans Leidekker
184474ea66
msi: Support setting summary information by importing a _SummaryInformation table.
2009-04-14 15:20:58 -05:00
James Hawkins
c965d839f9
msi: Allow the enumeration of other users' patches.
2009-03-23 15:52:17 +01:00
James Hawkins
c9b3bc1165
msi: Column attributes for temporary string and int columns should be g and j respectively.
2009-03-02 12:05:28 +01:00
James Hawkins
b3c9875cf7
msi: Correctly order transposed column values in the INSERT query.
2009-03-02 12:04:57 +01:00
Andrew Talbot
c0ad988e67
msi: Remove unused functions.
2009-02-06 13:04:03 +01:00
Andrew Talbot
668197a898
msi: Declare some functions static.
2009-01-12 13:10:53 +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
880b9199a9
msi: Add the ability to query a specific context for a patch.
2008-12-15 12:34:12 +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
bdf7da9bdc
msi: Remove a duplicated function.
2008-12-09 10:28:04 +01:00
James Hawkins
8438d21127
msi: Remove a duplicated function.
2008-12-09 10:27:58 +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
Andrew Talbot
94d22682c1
msi: Remove an unused declaration.
2008-12-08 22:02:53 +01:00
James Hawkins
7051bf5e22
msi: Remove an unused registry function.
2008-11-04 11:24:16 +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
f03889ae82
msi: Add initial implementation of MsiDatabaseMerge, with tests.
2008-10-09 12:58:25 +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
James Hawkins
62c544cf4f
msi: Implement the DROP TABLE sql command.
2008-10-06 13:05:52 +02:00
Marcus Meissner
96412ee564
Annotate with allocation size attribute.
2008-09-05 11:22:26 +02:00
James Hawkins
4b9fd1d5e2
msi: Store the _Columns and _Tables tables in the database structure.
2008-08-25 11:40:46 +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
9288055beb
msi: Only set the action to source if the component has a local feature.
2008-08-25 11:40:15 +02:00
James Hawkins
3807a91739
msi: Fix the logic to determine the appropriate action of the feature.
2008-08-25 11:40:09 +02:00
James Hawkins
7c9873e471
msi: Fix the logic to determine the appropriate action of the component.
2008-08-21 11:44:27 +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
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
200eba3b94
msi: Handle the user managed context in MsiQueryFeatureState.
2008-06-24 12:15:31 +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
2a180e060a
msi: Fix the PublishFeatures action to handle the package context.
2008-06-19 12:33:55 +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
4aa3a997f8
msi: Don't publish components to the Installer key.
2008-06-18 16:23:18 +02:00
James Hawkins
77d259f46c
msi: Search the last used source if the cabinet to extract cannot be found.
2008-05-22 11:30:54 +02:00
James Hawkins
bfe07d1d07
msi: Add initial implementation of MsiPublishAssemblies.
2008-04-30 13:45:23 +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
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
Rob Shearman
9b5d3677df
msi: Remove some unused functions.
2008-02-19 13:39:24 +01:00
James Hawkins
1f3d6a9744
msi: Reimplement MsiGetProductInfo.
2008-02-12 22:59:29 +01:00
James Hawkins
91c205e8c0
msi: Sort each table of the join separately.
2007-12-18 12:32:55 +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
0e29f314f5
msi: Return a remote interface to the database in a custom action.
2007-11-12 12:06:40 +01:00
James Hawkins
1a0b23cd7d
msi: Implement the CCPSearch standard action.
2007-11-05 14:55:24 +01:00
James Hawkins
fc6b9dd4e4
msi: Properly register and unregister components.
2007-11-01 12:43:06 +01:00
James Hawkins
6ac0816109
msi: Implement the UnpublishFeatures standard action.
2007-08-10 12:58:17 +02:00
Francois Gouget
5771700019
msi: Better match the PSDK types, remove some now unused types from win32.api, and update it to fix the winapi_check warnings.
2007-08-09 14:12:44 +02:00
James Hawkins
511bdd9de8
msi: Simplify MsiQueryComponentState, with more tests.
2007-08-09 13:53:36 +02:00
James Hawkins
ca55c7a330
msi: Implement the MSIINSTALLCONTEXT_MACHINE context for MsiQueryComponentState.
2007-08-07 12:39:48 +02:00
James Hawkins
b830fb0a34
msi: Implement the MSIMODIFY_UPDATE command in the SELECT view.
2007-07-27 12:24:39 +02:00
James Hawkins
ccef56f2cc
msi: Ref count temporary columns and release them when necessary.
2007-07-23 11:55:34 +02:00
James Hawkins
0fd733bf90
msi: Implement adding columns using the ALTER command.
2007-07-23 11:55:11 +02:00
James Hawkins
3b1ab76986
msi: Implement reference counting for tables, manipulated with the HOLD and FREE sql commands.
2007-07-19 12:00:43 +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
ba4919912c
msi: Forward MsiFormatRecordA to MsiFormatRecordW.
2007-07-06 18:12:05 +02:00
James Hawkins
39a5638268
msi: Read the components state directly from the registry.
2007-07-03 14:05:41 +02:00
James Hawkins
1130d5909b
msi: Open the correct key and return INSTALLSTATE_ADVERTISED if it's missing.
2007-07-03 14:05:21 +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
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
04c67c2a1c
msi: Add support for the MSICODE_PATCH option.
2007-07-03 13:42:42 +02:00
James Hawkins
e4658e05f2
msi: Handle remote calls to MsiGetActiveDatabase.
2007-07-03 12:59:32 +02:00
James Hawkins
bc4750ff75
msi: Add the IWineMsiRemoteCustomAction interface.
2007-07-03 12:59:17 +02:00
James Hawkins
f9001058b0
msi: Add the IWineMsiRemotePackage interface.
2007-07-03 12:58:43 +02:00
James Hawkins
7da89f48fd
msi: Use the correct registry key when detecting a published product.
2007-06-27 12:32:44 +02:00
Rob Shearman
2e2b17f340
msi: Fix transforms to work when the number of bytes per string reference differs to that of the database it is being applied to.
2007-06-27 12:32:42 +02:00
Rob Shearman
8a94f7aad3
msi: Implement MsiGetMode for MSIRUNMODE_SCHEDULED, MSIRUNMODE_COMMIT and MSIRUNMODE_ROLLBACK.
2007-06-26 11:56:33 +02:00
James Hawkins
9309f4dfa0
msi: Properly delete rows from the table, instead of zeroing out the row.
2007-06-19 11:31:44 +02:00
Andrew Talbot
19ef864058
msi: Name all or none of the formal arguments in function prototypes.
2007-06-18 13:36:42 +02:00
Andrew Talbot
cf1e01eb0c
msi: Constify some variables.
2007-06-14 13:20:45 +02:00
Andrew Talbot
8b362f7fc8
msi: Constify some variables.
2007-06-13 11:18:35 +02:00
James Hawkins
a05613a9f2
msi: Add support for large string tables.
2007-06-08 11:59:28 +02:00
Andrew Talbot
a0ae69a8d1
msi: Constify some variables.
2007-06-06 14:07:22 +02:00
Andrew Talbot
1486d851da
msi: Constify some variables.
2007-06-01 12:51:14 +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