Vincent Povirk
cce9a5f124
msi: Use integers internally for MSIDBOPEN constants.
...
This fixes a bug where some verions of mingw and probably gcc
assume that the result of pointer subtraction will be non-NULL,
causing MSI_OpenDatabaseW to break when given the mode
MSIDBOPEN_READONLY + MSIDBOPEN_PATCHFILE.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-05 16:14:41 +01:00
Alexandre Julliard
7cd3c9f073
msi: Build with msvcrt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 14:34:51 +02:00
Zebediah Figura
942964fdfb
msi: Handle the remote case in MsiViewGetError().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46830
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-27 11:28:02 +01:00
Zebediah Figura
6a3dbf1192
msi: Perform partial copies in MsiViewGetError().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-27 11:28:02 +01:00
Zebediah Figura
ed5f4bd14f
msi: Return ERROR_INVALID_HANDLE when MsiDatabaseApplyTransform() is called from a custom action.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 13:46:09 +01:00
Zebediah Figura
31628cee6e
msi: Factor out msi_view_refresh_row().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-29 17:12:13 +01:00
Zebediah Figura
8aefa871ad
msi: Use 0-indexed row numbers in the modify() view operation.
...
For consistency with other operations.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 10:28:53 +01:00
Hans Leidekker
ef86011ba4
msi: Support substorage transforms in MsiDatabaseApplyTransform.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40206
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-09 21:08:10 +01:00
Hans Leidekker
c494570d89
msi: Fix the remote case for MsiViewModify(MSIMODIFY_UPDATE).
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45972
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-12 17:06:53 +02:00
Zebediah Figura
baea371c3d
msi: Add exception handling around all custom action RPC calls.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-10 12:30:01 +02:00
Zebediah Figura
85d1fb62b3
msi: Execute custom actions in a separate process.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-26 13:27:10 +02:00
Zebediah Figura
ed0a8dd3bf
msi: Make MsiDatabaseGetPrimaryKeys() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 14:07:04 +02:00
Zebediah Figura
c79fbc241e
msi: Make MsiViewModify() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 14:06:57 +02:00
Zebediah Figura
cea37419f1
msi: Make MsiViewGetColumnInfo() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 14:06:54 +02:00
Zebediah Figura
9ab15d4ede
msi: Make MsiViewClose() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-20 14:06:51 +02:00
Zebediah Figura
39c116fd0c
msi: Make MsiViewFetch() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Zebediah Figura
afb5eede24
msi: Make MsiViewExecute() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Zebediah Figura
c6bd4d8c35
msi: Make MsiDatabaseOpenView() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Zebediah Figura
252dd11f20
msi: Make MsiDatabaseIsTablePersistent() RPC-compatible.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-19 12:51:21 +02:00
Zebediah Figura
9d12120395
msi: Store a record's associated query privately.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-18 10:12:52 +02:00
Zebediah Figura
8bfb4e8b62
msi: Convert the IWineMsiRemote* remote interfaces to RPC stubs.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 11:48:17 +02:00
Gerald Pfeifer
40922ccd4f
msi: Avoid shift overflow in msi_view_get_row.
...
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:32 +09:00
Hans Leidekker
0dba391d67
msi: Don't write streams to storage until the database is committed.
...
Native allows streams to be created with names that exceed the maximum
length allowed by OLE storages. These streams can be used normally, it's
just not possible to commit such a database.
2015-02-13 21:48:21 +09:00
Hans Leidekker
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
6950ac1d1c
msi: Add support for storing strings with embedded nulls in the string table.
2012-10-29 14:40:40 +01:00
Hans Leidekker
ca49aae61e
msi: Fix handling of single quoted column names in SELECT queries.
2011-12-23 15:12:18 +01:00
Bernhard Loos
20bdf059ab
msi: MsiDatabaseCommit also succeeds for a a readonly database.
2011-07-28 11:31:28 +02:00
Hans Leidekker
d1b2058500
msi: Make the column and table name parameters of get_column_info const.
2011-07-27 11:55:06 +02:00
Hans Leidekker
ab13c00fc9
msi: Add support for returning validation errors.
2011-06-07 14:18:33 +02:00
Hans Leidekker
eaa57c5b7b
msi: Compare strings without depending on thread locale.
2010-10-19 13:49:54 +02:00
Hans Leidekker
7e9d50a122
msi: Avoid pointer truncation in MSI_ViewFetch and MSI_ViewModify.
2010-09-13 10:59:18 -05:00
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
bdda3b950c
msi: Warn if a transform file cannot be opened.
2010-07-23 11:46:10 +02:00
Nikolay Sivov
5c6de7957e
msi: Convert IWineMsiRemoteDatabase BSTR parameters to LPCWSTR to avoid typecast.
2010-03-15 14:18:06 +01:00
Michael Stefaniuc
643f55abab
msi: Don't print the function name twice in a WARN.
2010-02-04 13:39:28 +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
534f20bc49
msi: Get rid of some redundant initializations.
2009-10-19 15:02:42 +02:00
Hans Leidekker
60b7604aa1
msi: Support opening transform databases.
2009-06-30 13:46:39 +02: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
2f8c2a8d41
msi: Make sure the view being updated is the same view the record was fetched from.
2009-02-26 12:13:49 +01:00
James Hawkins
e872681af7
msi: Set field zero to the name of the table containing the primary keys.
2009-02-26 12:13:44 +01:00
Michael Stefaniuc
6bd893a960
msi: Change MSIHANDLE to ULONG for Win64 compatibility.
...
Also fix the compiler warnings produced by this change.
2009-01-05 12:34:12 +01:00
Andrew Talbot
1c9886d6e7
msi: Sign-compare warnings fix.
2008-10-21 11:45:44 +02:00
James Hawkins
ccd030c7d3
msi: Add handling for the special _Storages table.
2008-07-08 10:50:04 +02:00
Andrew Talbot
68975938f6
msi: Remove unused variables.
2008-04-22 11:54:38 +02: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
35a6782d7b
msi: Test and implement the MSIMODIFY_DELETE command.
2007-11-05 14:52:46 +01: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
b830fb0a34
msi: Implement the MSIMODIFY_UPDATE command in the SELECT view.
2007-07-27 12:24:39 +02:00
James Hawkins
2b4bf44b79
msi: Add an internal MSI_ViewModify.
2007-04-23 16:18:03 +02:00