Commit Graph

203 Commits

Author SHA1 Message Date
Mike McCormack 525ceb7085 msi: Fix some memory leaks. 2006-07-28 12:32:14 +02:00
Mike McCormack f3dae17cbb msi: Use msi_alloc/free, not HeapAlloc/Free. 2006-07-27 11:56:51 +02:00
Mike McCormack bc673bff01 msi: Make MsiConfigureFeature a bit more robust. 2006-07-24 19:55:50 +02:00
Mike McCormack 0bfb9c3e3d msi: Move COM server implementation to a separate file. 2006-07-24 19:55:41 +02:00
Robert Shearman c0596e0ae9 msi: The szLogFile parameter of MsiEnableLogW is optional, so handle the case of it being NULL. 2006-07-24 13:47:50 +02:00
Mike McCormack e8a7587bdb msi: Implement MsiGetFileHash. 2006-07-24 13:46:33 +02:00
Mike McCormack bb141641d3 msi: Reimplement MsiGetUserInfo using awstrings. 2006-07-24 13:27:15 +02:00
Mike McCormack dc4d5b0f0e msi: MoveMsiEnumPatches to registry.c 2006-07-24 12:57:33 +02:00
Mike McCormack aed2de8ec9 msi: Handle W/A conversions more correctly in MsiProvideQualifiedComponentEx. 2006-07-21 10:56:53 +02:00
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
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 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
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 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
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 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
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
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Mike McCormack 3a94011ab6 msi: Clean up memset usage. 2006-04-18 21:13:52 +02:00
Mike McCormack a92fe55cce msi: Fix some possible NULL pointer dereferences (Coverity). 2006-04-17 12:38:36 +02:00
Francois Gouget 38884e0347 Small documentation tweaks to avoid winapi_check warnings. 2006-01-03 12:10:09 +01:00
Christian Gmeiner e02e539c1e msi: Implemented DllCanUnloadNow. 2005-12-05 20:39:33 +01:00
Steven Edwards f5f8cd0846 Partly implement MsiMessageBox[A/W] on top of MessageBoxEx[A/W] 2005-11-11 10:52:53 +00:00
Aric Stewart 5cbd491b7b Use MsiDecomposeDescriptorW in MsiProvideQualifiedComponentExW. 2005-11-10 11:06:04 +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
Ivan Leo Puoti 5b22e4d6ef Fix some wrong prototypes. 2005-11-03 11:35:11 +00:00
Mike McCormack 451ef3a9c3 Stub implementation for MsiAdvertiseScriptA/W. 2005-11-02 19:54:31 +00:00
Mike McCormack 15e578dfbc Stub implementation for MsiGetFileHashA/W. 2005-11-02 10:56:54 +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 ec5edeebf4 Define MSIDBOPEN_ constants using LPCWSTR when compiling Wine. 2005-10-30 19:21:51 +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 481bccc8b7 Add an implementation for MsiGetShortcutTargetA/W. 2005-10-29 10:28:30 +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 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 41c788f5a1 Don't create MSI handles unless we have to pass one through the API. 2005-09-28 10:13:18 +00:00
Mike McCormack 786920b7b6 Handle copying of the install package to a temporary file in one place
only.
2005-09-25 15:14:32 +00:00
Mike McCormack 170278dfe0 Implement MsiGetShortcutTargetA. 2005-09-23 10:48:42 +00:00
Mike McCormack ee034ba4c2 Added memory allocation inline functions (part 2). 2005-09-20 11:59:14 +00:00
Mike McCormack 4a202c2112 Fix the stub for MsiConfigureFeature. 2005-09-16 18:45:04 +00:00
Aric Stewart c774bb026d Implement MsiReinstallFeature. 2005-09-07 13:26:06 +00:00
Aric Stewart 685aa44b2d Be sure to null terminate the string in MsiGetProductInfoA after the
W->A conversion using MsiGetProductInfoW if there is space.
2005-09-06 14:04:25 +00:00
Aric Stewart d3d5ad6b7a Added stub implementations for MsiEnumPatchesA/W. 2005-09-06 11:05:24 +00:00
Francois Gouget 0de0d11357 Change some Dll* functions so they are exported by name like on
Windows.
Update the documentation accordingly.
2005-08-10 13:02:43 +00:00
Vincent Béron 21e3ba8cd1 Correct mismatches between spec files and comments about export
number.
2005-08-10 09:53:47 +00:00
Alexandre Julliard d37f0abf07 Don't prefix the functions DllCanUnloadNow, DllGetClassObject and
Dll(Un)RegisterServer with the dll name so that the compiler can check
the prototypes.
2005-08-08 17:35:28 +00:00
Steven Edwards cbec713615 Add real stub for MsiConfigureFeatureW. 2005-08-03 10:56:43 +00:00
Alexandre Julliard 7258914ef6 Use the official names for the Unicode string constants. 2005-07-13 12:07:41 +00:00
Aric Stewart 27867e2502 Use the SourceList functions to get the source path in
ConfigureProductExW.
2005-07-12 17:56:17 +00:00
Aric Stewart c6d24d235a Use the strings defined in msi.h. 2005-07-11 18:01:39 +00:00
Robert Shearman 199efb74fe In MsiLocateComponent pcchBuf can be NULL so don't try to dereference
it.
2005-07-08 11:29:55 +00:00
Aric Stewart f1b52aef96 Relocate the msi file to prevent cd locking, corrected to properly not
try to relocated #nnnn handles as files.
2005-06-28 19:14:30 +00:00
Aric Stewart 31695b54c9 A "1" is returned not a 1 for AssignmentType. Also as a bit more to
the FIXME message.
2005-06-13 19:04:39 +00:00
Aric Stewart 36bc29769b Add Language to the values we can query with MsiGetProductInfo. 2005-06-08 18:35:43 +00:00
Aric Stewart 90bc168c87 Correct a crash if the length buffer is NULL. 2005-06-07 20:02:07 +00:00
Aric Stewart 4d1ce166ce Locate where a buffer size is not being set and correctly handle the
buffer size conversion from W to A (with help from Robert Shearman).
2005-06-03 11:24:57 +00:00
Dmitry Timoshkov b67da5b946 Make more of the OLE interface vtables const. 2005-06-01 19:57:42 +00:00
Mike McCormack cac6387ca3 Add and correct some function declarations. 2005-05-30 11:12:24 +00:00
Aric Stewart fefad8fcf2 Fix a leaking handle.
Make MsiCollectUserInfo more internally consistent.
Thanks to Mike McCormack.
2005-05-23 16:23:54 +00:00
Aric Stewart 8a6d5e5847 Fix a leaking handle in MsiConfigureProductExW.
Implement MsiGetProductCodeW.
Implement MsiGetUserInfoW.
Implement MsiCollectUserInfoA/W.
2005-05-20 18:59:11 +00:00
Stefan Leichter f483ca611e Added minimal implementation of MsiCreateAndVerifyInstallerDirectory. 2005-05-11 12:01:12 +00:00
Aric Stewart 2b8bf597b5 Correct user component publication.
Implement MsiEnumComponentQualifiers.
2005-04-28 18:28:11 +00:00
Aric Stewart ece85e0cf0 Implement MsiQueryFeatureStateW. 2005-04-28 12:01:06 +00:00
Aric Stewart afcaf83ed7 Correct a leaking hkey handle. 2005-04-27 08:11:52 +00:00
Aric Stewart 1b54881209 Expand some handling of special properties in MsiGetProductInfo. 2005-04-26 14:30:31 +00:00
Francois Gouget 5ffd9888cd Tweak the API documentation to silence winapi_check warnings. 2005-04-22 19:04:41 +00:00
Aric Stewart 7e181f49a8 Fix for the return codes for the Qualified component calls. They are
not INSTALLSTATEs but rather success values.
2005-04-21 17:24:27 +00:00
Francois Gouget 3ef8c51c8a Tweak the API documentation to silence winapi_check warnings. 2005-04-20 15:18:42 +00:00
Aric Stewart 072c5e56a2 Implement Publish Components in order for MsiGetQualifiedComponent
apis to work. Also implement MsiGetQualifiedComponent, or at least some
of the functionality as it is supposed to install stuff if it is
absent, which it does not do yet.
2005-04-20 12:50:05 +00:00
Mike McCormack 180f04059b Split out database functions, remove dependence on wine/unicode.h. 2005-03-29 11:28:57 +00:00
Mike McCormack 30e388af51 Use strdup, implement MsiDatabaseImportA. 2005-03-25 16:38:26 +00:00
Mike McCormack 77a19ed8e6 Replace instances of HeapAlloc/MultiByteToWideChar with the internally
defined strdupAtoW.
2005-03-24 19:04:06 +00:00
Marcus Meissner 6d32d63979 Fixed MsiDatabaseImportA, MsiDatabaseImportW, and
MsiCreateAndVerifyInstallerDirectory stub parameter counts.
2005-03-23 10:24:53 +00:00
Juan Lang 5ebd4e938e - make sure msihandle2msiinfo is correctly matched with msiobj_release
- don't do redundant NULL checks
2005-03-10 11:15:40 +00:00
Francois Gouget fbb3343547 Assorted spelling fixes. 2005-03-02 13:53:50 +00:00
Jon Griffiths eb5bf7dd38 Documentation spelling fixes. 2005-02-25 14:07:56 +00:00
Aric Stewart af812605fb Do some basic work with registry component paths. 2005-02-24 10:05:53 +00:00
Mike McCormack 0b1b703fdd Move product, feature and component enumeration functions to
registry.c.
2005-02-16 17:52:53 +00:00
Aric Stewart 2e24400cc9 Stubs for MsiUseFeature. 2005-02-16 16:24:38 +00:00
Mike McCormack fa5cbb5a0f MsiGetComponentPath should allow null pointers for pcchBuf and
lpPathBuf.
2005-02-16 16:04:36 +00:00
Mike McCormack d42081f8c9 Update headers, add MsiGetUserInfoA stub implementation. 2005-02-10 18:57:42 +00:00
Aric Stewart fccb667f0e Added stubs for MsiGetShortcutTargetA/W. 2005-02-10 17:10:14 +00:00
Mike McCormack 17cfa28216 Fix a memory leak in MsiConfigureProductExW. 2005-02-09 13:22:49 +00:00
Mike McCormack 65fb09183b Implement and document MsiLoadString. 2005-02-08 12:12:29 +00:00
Mike McCormack 479213c455 Implement MsiPreviewDialog. 2005-01-28 12:39:57 +00:00
Aric Stewart 475a81a818 Added a few more stub implementations. 2005-01-26 19:41:13 +00:00
Aric Stewart a26aa0af4c Move the guid squishing functions out of msi.c and make a new
registry.c file. Also clean up all the various registry keys we need
to open and create to this module and modify the functions for msi.c
to call these functions.
2005-01-25 10:58:36 +00:00