Hans Leidekker
c4fc91f4bf
msi: Use wide character string literals in the remaining files.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-29 20:19:12 +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
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
859f455cb9
msi: Avoid returning an uninitialized variable.
...
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-23 12:02:39 +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
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
bbf0f2da82
msi: Make MsiProcessMessage() RPC-compatible.
...
Instead of passing a remote MSIHANDLE and creating a set of remote_Record*()
methods, we marshal the whole record as a wire struct. We do this for two
reasons: firstly, because chances are whoever is reading the record is going
to want to read the whole thing, so it's much less taxing on IPC to just pass
the whole record once; and secondly, because records can be created on the
client side or returned from the server side, and we don't want to have to
write a lot of extra code to deal with both possibilities.
The wire_record struct is designed so that we can simply pass the relevant
part of an MSIRECORD to the server.
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:58 +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
f348c7c04c
msi: Rewrite dump_record().
...
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>
2017-07-11 18:25:59 +02:00
Zebediah Figura
1505912ce1
msi: Allow setting NULL in MsiSetInteger().
...
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>
2017-07-10 20:51:09 +02:00
Hans Leidekker
13af267e75
msi: Use proper return types in MSI_RecordSetStreamFromFileW.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-14 22:25:22 +09:00
André Hentschel
3c1ca4e548
msi: Use boolean return value in boolean function.
2014-02-04 11:15:47 +01:00
Dmitry Timoshkov
a5b51a766b
msi: Check number of bytes returned by ReadFile.
2013-10-30 15:28:56 +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
7d3f903db1
msi: Fix handling of REG_MULTI_SZ values in the WriteRegistryValues action.
2012-11-05 17:44:18 +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
Andrew Talbot
48a6130279
msi: Add a break to a switch statement.
2011-10-06 16:47:30 -05:00
Bernhard Loos
abd1174941
msi: Protected primary keys against modification.
2011-08-26 13:34:25 +02:00
Hans Leidekker
9299319b88
msi: Remove some dead assignments (clang).
2011-07-07 14:45:59 +02:00
Hans Leidekker
0c43024af7
msi: Get rid of helpers.c.
2011-05-06 16:39:08 +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
James Hawkins
9ab7d9e21a
msi: Close the original record before copying new data into it.
2009-12-11 12:16:26 +01: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
Hib Eris
f6dd90de5e
msi: Add support for binary OBJECTS.
2009-05-26 15:18:02 +02:00
Nicolas Le Cam
e00d864a35
msi: Fix buffer length value returned by MSI_RecordGetStringW on null and empty strings.
2009-04-20 17:26:13 +02:00
James Hawkins
9540d762ad
msi: Handle reading from a NULL stream.
2009-03-02 12:06:37 +01:00
Andrew Talbot
668197a898
msi: Declare some functions static.
2009-01-12 13:10:53 +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
Aric Stewart
17ffb562aa
msi: Fix some NULL checking in MSI_RecordGetStringA.
...
Includes a few record tests with a NULL buffer.
2008-12-18 14:19:40 +01:00
James Hawkins
f03889ae82
msi: Add initial implementation of MsiDatabaseMerge, with tests.
2008-10-09 12:58:25 +02:00
James Hawkins
4439e0b57d
msi: Make local functions static.
2008-03-01 12:18:40 +01:00
James Hawkins
0d56df214b
msi: Successfully return an empty string when requesting a record index beyond the record's size.
2008-02-11 20:45:24 +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
Andrew Talbot
a0ae69a8d1
msi: Constify some variables.
2007-06-06 14:07:22 +02:00
James Hawkins
7d3162e6be
msi: Abstract MSI_RecordSetStream.
2007-04-23 16:18:13 +02:00
Mike McCormack
8f20756068
msi: Test MsiRecordGetString on an integer record fields with a NULL output buffer.
2006-11-21 12:15:59 +01:00
Mike McCormack
f1d4646a49
msi: Win64 printf format warning fixes.
2006-10-05 11:32:32 +02:00
Mike McCormack
71d8f4ebf6
msi: Create a function to copy record fields, use it to order INSERT fields correctly.
2006-09-07 11:00:19 +02:00
Mike McCormack
b9d6ec3b87
msi: Fix MsiRecordGetString for a null buffer and non-zero buffer length.
2006-08-28 11:49:14 +02:00
Mike McCormack
aff9f4c1ed
msi: Fix an off by one error in MsiRecordGetString.
2006-07-26 15:17:42 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Mike McCormack
ed580a1d85
msi: Avoid accessing a null pointer.
2006-04-07 11:45:41 +02:00
Mike McCormack
50684c15d5
Create the +msidb debug channel for msi database code.
2005-11-02 14:24:21 +00:00
Mike McCormack
8dc28d5306
Added memory allocation inline functions (part 1).
2005-09-20 11:57:19 +00:00
Mike McCormack
7e3918d53e
Make the MSI icon control work.
2005-06-23 16:43:38 +00:00