Aric Stewart
0af2487a51
Implement the action RegisterFonts.
2005-02-25 14:00:09 +00:00
Aric Stewart
b6bc6aa6f8
Add the ExecuteAction handler.
...
Store the keypath, and do refcounting and registration of SharedDLLs.
Fix a bug with handing dword values in the registry.
Fix bugs with writing registry keys where value == NULL.
Make use of msidefs.h.
Lay some groundwork for uninstalls.
2005-02-24 12:47:43 +00:00
Aric Stewart
af812605fb
Do some basic work with registry component paths.
2005-02-24 10:05:53 +00:00
Ulrich Czekalla
fa85f0132b
Prevent accessing freed memory in failure case.
2005-02-24 10:05:27 +00:00
Aric Stewart
713dc8f60c
Make sure formats like [\\]] and [\\[] work properly.
2005-02-23 12:44:25 +00:00
José Manuel Ferrer Ortiz
f151e9b174
Added MSI Spanish resources.
2005-02-23 12:41:09 +00:00
Mike McCormack
09b8264f1d
Make sure strings are null terminated.
2005-02-22 19:31:45 +00:00
Aric Stewart
78a04e39db
Update the installed state for components during CostFinalize. Laying
...
groundwork to be able to start processing uninstall logic as well.
2005-02-22 15:47:00 +00:00
Steven Edwards
5f8797f1fd
Correct typo.
2005-02-22 14:53:05 +00:00
Aric Stewart
7e7b8cf4ef
Fixed problems with my code for finding the PackageCode.
2005-02-18 20:00:34 +00:00
Jonathan Ernst
a37a4f6ce6
Add French resources.
2005-02-16 21:10:02 +00:00
Mike McCormack
0b1b703fdd
Move product, feature and component enumeration functions to
...
registry.c.
2005-02-16 17:52:53 +00:00
Mike McCormack
3988d9c53b
Add a border to the edit control, add some more controls.
2005-02-16 16:25:36 +00:00
Mike McCormack
9bef4830a5
Fix up the summary information code a little.
2005-02-16 16:25:09 +00:00
Aric Stewart
2e24400cc9
Stubs for MsiUseFeature.
2005-02-16 16:24:38 +00:00
Mike McCormack
10e5c9e834
Remove const declaration from non-const function.
2005-02-16 16:07:11 +00:00
Mike McCormack
e2df8814ea
Allow MsiViewExecute to be called twice on the same query.
2005-02-16 16:06:05 +00:00
Mike McCormack
64623067c3
Implement MsiDatabaseGetPrimaryKeys.
2005-02-16 16:05:11 +00:00
Mike McCormack
fa5cbb5a0f
MsiGetComponentPath should allow null pointers for pcchBuf and
...
lpPathBuf.
2005-02-16 16:04:36 +00:00
Henning Gerhardt
d0cc21f45f
Add/updated German resources.
2005-02-15 20:46:19 +00:00
Marcelo Duarte
574c0edabb
Update the resources for Portuguese.
2005-02-14 11:12:30 +00:00
Marcus Meissner
30ed10004b
Output some more informations.
...
Mark one global variable static.
2005-02-14 11:07:55 +00:00
Mike McCormack
1afddb3cd3
Implement SQL delete query.
2005-02-14 11:07:13 +00:00
Francois Gouget
4d801b66e6
Assorted spelling fixes.
2005-02-10 19:19:35 +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
Aric Stewart
c7e88e0820
Add the RegisterUser action.
2005-02-10 17:09:44 +00:00
Ulrich Czekalla
3440035341
Handle 0 length buffers in MSI_FormatRecordW.
...
Remove unused buffer in deformat_string.
2005-02-09 22:22:25 +00:00
Aric Stewart
c2abd83079
Do not track the temp files for custom actions based on the name from
...
the table because then we get conflicts and files not tracked or
cleaned up.
2005-02-09 14:05:24 +00:00
Aric Stewart
187da09b2d
Implement RegisterExtensionInfo and RegisterMIMEInfo.
2005-02-09 13:58:20 +00:00
Mike McCormack
f51ad46a7a
Handle a number as a parameter for custom action 19.
2005-02-09 13:57:54 +00:00
Aric Stewart
0f65057aed
Do not limit properties to 256 characters when evaluating them.
2005-02-09 13:26:16 +00:00
Mike McCormack
34d4a02bc5
- add support for Edit boxes in MSI dialogs
...
- run the message loop when waiting for threads or processes
2005-02-09 13:24:31 +00:00
Mike McCormack
17cfa28216
Fix a memory leak in MsiConfigureProductExW.
2005-02-09 13:22:49 +00:00
Aric Stewart
6ed10c8013
Make a temp file for each dll saved for custom actions. This prevents
...
name collisions from causing custom actions to fail.
2005-02-08 14:27:06 +00:00
Aric Stewart
c1e5c4a907
Add logic to be able to resolve the SourceDir based on
...
CurrentPath. Also add logic to get the source locations of a file if
it is not in a cabinet.
2005-02-08 14:26:49 +00:00
Mike McCormack
ef1d367bcc
Fix MsiModifyView and MsiViewGetColumnInfo to use MSIRECORD* not MSIHANDLE.
2005-02-08 13:44:25 +00:00
Mike McCormack
e7488b8f79
- fix the dialog font
...
- allow waiting on a handle while running the message loop
2005-02-08 12:55:47 +00:00
Juan Lang
5f35a32f60
Identifiers evaluate to true if they are non-empty, regardless of
...
value.
2005-02-08 12:13:49 +00:00
Mike McCormack
65fb09183b
Implement and document MsiLoadString.
2005-02-08 12:12:29 +00:00
Mike Hearn
e0803f1ac4
Correctly ensure properties set from resolved directory paths are
...
backslash terminated.
2005-02-08 12:11:54 +00:00
Juan Lang
1d936f45ae
If a full path isn't specified, search across all fixed drives.
2005-02-08 12:08:49 +00:00
Mike McCormack
fe0f128d06
- implement checkboxes in dialogs
...
- use TextStyle enumeration instead of numbers
- fix MSI_IterateRecords to return the correct count
2005-02-03 10:41:59 +00:00
Juan Lang
c33efbeb7d
Simplify AppSearch error checking.
2005-02-03 10:41:41 +00:00
Mike McCormack
fd91013b46
Add more dialog controls, do something when they're clicked on.
2005-02-02 09:55:51 +00:00
Aric Stewart
3b38dc6864
Cleanup processing a bit more.
...
Allow for nested keys to work properly.
2005-02-02 09:30:22 +00:00
Aric Stewart
a905217b3e
Fix a copy and paste error, check for a null value and discard
...
unneeded errors.
2005-02-02 09:30:05 +00:00
Mike McCormack
79a6626b64
MsiEvaluateCondition returns an error when passed NULL as a
...
condition.
2005-02-02 09:29:46 +00:00
Aric Stewart
d6ecf58e2f
Finish up the framework by stubbing out all the remaining Standard
...
actions.
A fix to deformat_string so it only returns a null return if you
provided a null buffer.
2005-02-02 09:29:30 +00:00
Aric Stewart
3f3186091e
Continued work to simplify the ProcessAction call, also split it into
...
a ProcessAction and ProcessUIAction for future dialog box work.
Also fix a bug in deformat_string where i was not freeing the created
record.
2005-02-01 18:46:26 +00:00
Juan Lang
df9d01409b
Partially implement AppSearch action.
2005-02-01 14:22:31 +00:00
Aric Stewart
5eaf9cec86
Added some more suminfo stubs.
2005-02-01 14:21:03 +00:00
Aric Stewart
4590c7ddee
A reworking of format.c to remove the recursion, clean things up and
...
stabilize behavior to match windows.
2005-01-31 20:41:11 +00:00
Aric Stewart
90c57396f4
Eliminate the giant if.. else if block from ACTION_ProcessAction in
...
favor of a table of handlers.
Return code of the install should not depend on the return code of the
final action.
Update component installed states as they are installed so that
conditions based on component states are at least a little more
correct.
Add icon and argument when regestering clsids.
Add a stub for ResolveSource because we do that work just not in
ResolveSource like we should.
When quering a Component state return the correct state.
2005-01-31 16:23:12 +00:00
Aric Stewart
e495e7e34c
Setting a record to an empty string is the same as making it null.
2005-01-31 11:30:59 +00:00
Mike McCormack
479213c455
Implement MsiPreviewDialog.
2005-01-28 12:39:57 +00:00
Aric Stewart
6b16f29fc0
Enable the updating of Feature and thus the resulting component
...
states.
Run the end of install actions for suspend and user exit states as
well.
Start putting in place a currently running state for future ui use.
2005-01-27 11:12:56 +00:00
Mike McCormack
279ef15646
- implement MsiOpenPackageEx, and forward MsiOpenPackage there
...
- make a MSI_CreatePackage function and use it in MSI_OpenPackage
- move MsiOpenPackageA down with the rest of the API functions
2005-01-27 11:12:16 +00:00
Mike McCormack
c04ce10bdd
Test different types of dodgy queries.
2005-01-27 10:43:27 +00:00
Aric Stewart
c169f717ee
Implement custom action type 19, Halt install and display error
...
message.
2005-01-27 10:43:12 +00:00
Aric Stewart
409d3f62cd
MsiGetProperty does not return any error on missing properties.
2005-01-27 10:42:45 +00:00
Francois Gouget
da8b3dd7f2
Assorted spelling fixes.
2005-01-26 21:09:04 +00:00
Mike McCormack
e5f2ed4c66
Fix MsiRecordSetString for NULL strings and update test case.
2005-01-26 20:39:54 +00:00
Aric Stewart
475a81a818
Added a few more stub implementations.
2005-01-26 19:41:13 +00:00
Aric Stewart
54c67dd1b1
- action.c is getting too big, so split out all the handling of
...
CustomActions into custom.c. Cleaned up a lot of the handling of
custom actions including scripting actions and processing return
codes.
- Mike McCormack pointed out that MsiFormatRecord is basically the
same as internal function deformat_string. So broke deformat_string
out and updated it to function as MsiFormatRecord and implemented
MsiFormatRecord.
- A number of random fixes to action.c including properly calculating
the length for the LocalPackage name, not forcing a reboot when
really we should just return ERROR_INSTALL_SUSPEND and handling
REG_MULTI_SZ now that we can deformat the properly.
2005-01-25 20:17:09 +00:00
Mike McCormack
5af66fef43
Implement, test and document MsiDecomposeDescriptor.
2005-01-25 16:41:33 +00:00
Aric Stewart
68b0749471
Use the new registry functions in registry.c.
...
Do not force a reboot, just return ERROR_INSTALL_SUSPEND and write
some keys to the registry.
2005-01-25 11:05:37 +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
Alexandre Julliard
ee4f4a05c5
Avoid unnecessary run-time initializations.
2005-01-24 12:55:31 +00:00
Aric Stewart
0252761c0b
The new Insert fixes now properly require ?,? instead of just ? for
...
the Insert call. This fix modifies the MSI_SetProperty query to be
correct.
2005-01-24 11:25:02 +00:00
Aric Stewart
9999e6ccdf
An implementation of MsiSummaryInfoGetPropertyW based off of
...
MsiSummaryInfoGetPropertyA.
2005-01-24 11:24:35 +00:00
Mike McCormack
609f5514ac
Indentation and style cleanup.
2005-01-24 11:22:00 +00:00
Mike McCormack
0c23885654
Move OpenQuery into msiquery.c and make it non-static.
2005-01-21 16:19:11 +00:00
Mike McCormack
eb23257b7d
Added stub implementations for MsiPreviewDialog and
...
MsiPreviewBillboard.
2005-01-21 10:17:01 +00:00
Mike McCormack
cce387d1a6
Lock record in MsiViewExecute, move stubs to end.
2005-01-21 10:16:30 +00:00
Mike McCormack
5007de8b05
Fix and test inserting records.
2005-01-20 20:39:15 +00:00
Mike McCormack
b3a7f37aaf
Fix refcounting, use Interlocked functions.
2005-01-20 20:34:29 +00:00
Mike McCormack
48df747150
Fix a bug caused by freeing memory too soon in the table code.
2005-01-20 19:57:22 +00:00
Michael Stefaniuc
b937407ee5
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2005-01-20 10:36:35 +00:00
Aric Stewart
2cae30b6cf
Quite a few fixes:
...
- Allow for the queing of custom actions to trigger on the
InstallExecute or InstallExecuteAgain actions.
- allow for the queing of custom actions to trigger on
InstallFinalize.
- Properly set the CustomActionData property for said queued actions.
- Implement RegisterProduct.
- Beginning implementation of ForceReboot.
- Don't kill install if an item to be duplicated does not exist.
- Write out SourceList and LastUsedSource for resuming installs.
- Use regsvr32 to register self reg dlls.
2005-01-19 19:07:40 +00:00
Aric Stewart
2c0e46d9df
Do a very basic first implementation of MsiConfigureProductExW for
...
msiexec /@ when run as a reboot.
Also add a number of new stubs for the office xp and 2k3 install and
startup process.
2005-01-19 16:58:03 +00:00
Aric Stewart
6269f00c33
Implementations for SelfRegModules and PublishFeatures.
...
Set default ACTION property for Install.
Deformat more than JUST properties properly. Allows for Files and
Component paths in deformat.
Properly deformat a LaunchCondition failure dialog box.
Resolve and save registry Keypaths.
Write the Features published keys more correctly. Still some
problems.
2005-01-17 13:40:39 +00:00
Aric Stewart
82a6a3b826
First pass implement ion of MsiQueryProductState[A/W] as well as a few
...
fixes for MsiGetComponentPath.
2005-01-17 13:39:57 +00:00
Aric Stewart
0de5671ee9
Actually start on an implemention for MsiGetComponentPathW that should
...
handle all keypaths that are files.
2005-01-14 17:05:53 +00:00
Marcus Meissner
b7f6781590
Initialize rc in create_component_directory().
2005-01-14 16:50:39 +00:00
Aric Stewart
516a9c70ed
First implementation of the WriteIniValues action.
2005-01-14 15:59:26 +00:00
Aric Stewart
dbb5d2a871
Custom actions can have null in their target parameters, handle that
...
without crashing. Also enable deformating of lines greater than 256
characters.
2005-01-14 15:12:27 +00:00
Paul Vriens
6a8268f372
Use Interlocked* functions in AddRef and Release.
2005-01-11 15:46:43 +00:00
Francois Gouget
87b0906789
Assorted spelling fixes.
2005-01-10 13:29:24 +00:00
Mike McCormack
921be0a87c
Implement MsiRecordSetStreamA/W and add tests for records containing
...
streams.
2005-01-09 18:24:15 +00:00
Aric Stewart
2b2fecf88a
Make all custom type 1 actions happen in a seperate thread and close
...
all handles for that thread when it exits. Honors the concept of
temporary MSI handles for custom actions.
2005-01-07 17:08:35 +00:00
Mike McCormack
8964082781
MsiCloseAllHandles only closes handles allocated in the calling
...
thread.
2005-01-06 20:43:04 +00:00
Mike McCormack
25c453aaf4
Add test for records.
2005-01-06 20:42:48 +00:00
Mike McCormack
aaa4b42c16
Fix records according to test cases.
2005-01-06 20:42:25 +00:00
Aric Stewart
1416b10119
- Properly deformat keys written to the registry.
...
- Because directory mappings can change between the CostFinalize step
and the InstallFiles step we need to do a final resolution of the
target file name before installing.
2005-01-06 19:34:16 +00:00
Aric Stewart
00e1ecdce8
When checking for an existing .lnk shortcut extension on the filename
...
do not just search for '.' but actually verify it is '.lnk'.
2005-01-05 17:13:12 +00:00
Vitaly Lipatov
2dd31728d3
Get real screen properties.
2005-01-05 17:11:33 +00:00
Mike McCormack
23b291a642
Add a simple test case for MSI databases.
2005-01-05 13:26:34 +00:00
Aric Stewart
4e55343064
- CustomAction 35 should call SetTargetPath not just set the property.
...
- TARGETDIR and SOURCEDIR may not be entries 0 in the directory
tables. So when resolving the folder we need to seek them out.
- When we handle SetTargetPath we need to be sure to recalculate the
resulting paths as things with the now set Directory as the parent
will change.
2005-01-04 20:47:20 +00:00
Aric Stewart
def5cbfc0b
Change how we install files so that we extract files as we need them,
...
cuts down on extraction time and unused files.
2005-01-04 20:42:58 +00:00
Mike McCormack
ac6a413bf5
Remove unneeded whitespace, indent correctly.
2005-01-04 20:36:12 +00:00
Aric Stewart
bd1bbc1768
Improve progress bar tracking.
2005-01-03 20:00:13 +00:00
Steven Edwards
d06a464ce9
Add and fix some stubs.
2005-01-03 16:54:43 +00:00
Aric Stewart
6296de389a
Be sure that set paths are terminated with a backslash.
2005-01-03 16:06:44 +00:00
Aric Stewart
51cf7d13c0
Free allocated buffers.
2005-01-03 14:29:09 +00:00
Mike McCormack
0f0b6c8c15
Implement thread safety for records.
2004-12-27 19:29:33 +00:00
Aric Stewart
d900b5392d
Parse out the full features by using the ',' character and do
...
comparisons based on the full feature names.
2004-12-27 19:12:35 +00:00
Aric Stewart
ea32fb93a1
Continue when a duplicate component is found and loaded.
2004-12-27 19:09:16 +00:00
Aric Stewart
fbdd70968d
- Rework how we handle Feature and Component States. I have confirmed
...
from testing that, although documented nowhere, having ADDLOCAL on
the install line overrides INSTALLLEVEL.
- Track all files extracted from cabinents as tempfiles so they can be
removed at the end of the install to not leave uninstalled but
uncabbed files laying around.
2004-12-27 19:06:22 +00:00
Aric Stewart
ae1aa32c77
Move Install Features selection and evaluation into CostFinalize.
2004-12-27 19:02:59 +00:00
Aric Stewart
09d35c3c91
Allow for end of install actions.
2004-12-27 19:00:26 +00:00
Aric Stewart
8cc14a93a1
- Create the shortcut directory if it does not exist.
...
- Set the INSTALLLEVEL in CostFinalize if it is not set.
2004-12-27 18:56:30 +00:00
Aric Stewart
2ad3ff880f
Eliminate some fixed length buffers.
2004-12-27 18:50:00 +00:00
Aric Stewart
fb9d11941f
Include a System16Folder definition.
2004-12-27 17:43:37 +00:00
Aric Stewart
3c949ef412
Enable asynchronous dll custom action calls.
2004-12-27 17:09:40 +00:00
Aric Stewart
ab013bb6db
Added MsiSetExternalUIW.
2004-12-23 11:22:00 +00:00
Aric Stewart
454422d605
Make sure to include trailing backslash in path.
2004-12-23 11:20:50 +00:00
Aric Stewart
62cd1e03c3
Blank the property buffers even if the property is not found.
2004-12-22 18:47:54 +00:00
Aric Stewart
fa384f6b10
Move around and rename some functions.
2004-12-22 18:46:17 +00:00
Aric Stewart
74ad0d3ab7
Include the trailing backslash on the Windows volume.
2004-12-22 18:17:15 +00:00
Aric Stewart
d0c971a62c
Fix incorrect return code check.
2004-12-22 18:15:50 +00:00
Aric Stewart
259557038c
Fix folder resolution.
2004-12-22 17:13:26 +00:00
Mike McCormack
ba8200bf49
Remove more fixed length buffers, rewrite functions to return
...
malloc'ed memory.
2004-12-22 15:25:30 +00:00
Mike McCormack
1bd8d8a55a
Fix selecting string columns and matching against a wildcard.
2004-12-22 15:22:12 +00:00
Mike McCormack
9db0e072b1
Remove a lot of fixed length buffers.
2004-12-22 15:05:07 +00:00
Aric Stewart
3d5c00e104
Let negative number be parsed correctly. Needed for accessing actions
...
with sequences such as -1.
2004-12-16 14:33:56 +00:00
Vitaly Lipatov
671267a177
Add ScreenX, ScreenY, ColorBits installer properties.
2004-12-16 14:31:59 +00:00
Vitaly Lipatov
5c4116bc66
Add description for MsiGetMode, MSIRUNMODE constants.
2004-12-16 14:29:25 +00:00
Eric Pouech
4056d7ef8c
Fixed some errors in function prototypes.
2004-12-13 21:19:01 +00:00
Michael Stefaniuc
9fe94da2aa
Add missing HeapFree's (found by smatch).
2004-12-10 15:24:52 +00:00
Ulrich Czekalla
63d757f044
Set the out buffer count to zero on read error.
2004-12-06 16:18:22 +00:00
Mike McCormack
6b395bab07
Fix transposition of 4 byte values when reading in table data from
...
storage.
2004-12-06 16:17:45 +00:00
Mike McCormack
181705cbbd
- Don't limit the size of the property that can be retrieved by
...
MsiGetProperty.
- Make MsiGetProperty A/W implementations more consistent.
2004-11-28 14:53:46 +00:00
Tom Wickline
5c38e1b561
Version resources cleanup.
2004-11-23 13:59:34 +00:00
Aric Stewart
1282d7ad44
Handle 3 more custom action types
2004-11-03 22:16:53 +00:00
Aric Stewart
d906ef03ff
Don't reregister ProgIds over and over, also write out the main key
...
before trying to register the Parent. This avoids loops if a ProgId
has itself as a parent or there is a loop in dependencies.
2004-10-22 22:06:31 +00:00
Aric Stewart
120009e9b4
Properly compare file versions when upgrading files so that new
...
versions get properly installed.
2004-10-08 23:35:35 +00:00
Francois Gouget
486d020c1b
Don't define COBJMACROS in objbase.h.
...
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Robert Shearman
dce07c4040
Make sure paths end with a slash before concatenating file names.
2004-09-17 18:11:14 +00:00
Robert Shearman
3d7299b7a4
- Use FDI functions like native instead of advpack.ExtractFiles and
...
cabinet.Extract (which doesn't work with native cabinet)
- If MoveFile fails the message now displayes the correct last error
and bails rather than silently breaking the install.
2004-09-10 22:29:49 +00:00
Kevin Koltzau
3f8d8bec55
Partial implementation of MsiGetFileVersionA/W.
2004-09-06 21:25:48 +00:00
Alexandre Julliard
39a696a166
Removed some uses of the non-standard ICOM_THIS macro.
2004-09-06 20:34:29 +00:00
Alexandre Julliard
7c1e9361a3
Added a few missing -private flags.
2004-08-27 19:15:54 +00:00
Aric Stewart
bc6ce2b249
Free memory after we finish using it instead of just before.
2004-08-25 17:31:39 +00:00
Aric Stewart
47c94c0e4d
Getting the string for a null field should not create an error. Add a
...
missing break.
2004-08-24 20:56:08 +00:00
Alexandre Julliard
f714b39762
Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
...
macro.
2004-08-23 19:39:48 +00:00
Alexandre Julliard
25e2a320a7
Don't define BEGIN_INTERFACE in unknwn.h.
2004-08-22 21:38:46 +00:00
Vincent Béron
6fae1ce6fd
Don't hardcode c:\windows paths in msi.dll.
2004-08-18 23:41:10 +00:00
Alexandre Julliard
48c4bb3c31
Get rid of the non-standard ICOM_VTABLE macro.
2004-08-12 23:00:51 +00:00
Alexandre Julliard
0467ce9fd7
Get rid of the non-standard ICOM_VFIELD macro.
2004-08-12 19:52:49 +00:00
Francois Gouget
bf72af30d0
Modify widl to put the C COM macros inside an #ifdef COBJMACROS block
...
as is done in the Windows headers.
Add #define COBJMACROS where needed in Wine.
Fixes the compilation of the oleaut32/tests/olefont.c and
urlmon/tests/url.c conformance tests with the Windows headers.
2004-08-11 19:43:45 +00:00
Mike McCormack
4604e66094
Fix warnings found with -Wsign-compare.
2004-08-06 17:30:20 +00:00
Aric Stewart
6a787c7c40
Use correct calling convention for the custom action handlers.
2004-07-30 00:00:25 +00:00
Aric Stewart
8d81d671eb
Make the msistring_makehash return something other than just 1 or
...
0. Also handle the case where the string or stored string is null.
2004-07-29 23:59:15 +00:00
Vincent Béron
bbc3974aa5
Implement patching in msiexec.
2004-07-29 02:39:20 +00:00
Troy Rollo
7ade261c35
Fix parsing of string literals.
2004-07-29 02:36:06 +00:00
Vincent Béron
d2df24b90f
Implement logging in msiexec.
...
Correct MsiEnableLog{A,W} prototype.
2004-07-23 23:28:45 +00:00
Aric Stewart
84837d96a6
If the data table for a called action does not exist (for example
...
CreateFolders wants a CreateFolder table to read the data from) do not
fail, instead just do not perform the action.
2004-07-20 01:22:37 +00:00
Hans Leidekker
4104c622af
Set VersionMsi property.
...
Accept a dot in a number value.
2004-07-19 21:49:15 +00:00
Vincent Béron
5c60510bc0
Implement the repair mechanism in msiexec, and stub it out in
...
msi.dll.
2004-07-19 21:19:45 +00:00
Mike McCormack
f3c8b83055
Fix the return code of MsiDatabaseOpenView.
2004-07-19 19:35:05 +00:00
Francois Gouget
817c520909
Assorted spelling fixes.
2004-07-16 19:15:40 +00:00
Aric Stewart
9c76b14469
Implement the functionality that allows one to call MsiOpenPackage
...
with #nnn where nnn is a string representing the handle to an open
database.
2004-07-14 21:43:49 +00:00
Aric Stewart
55de9f40dd
Update the MSI version to be the same as on win2k.
2004-07-14 21:42:50 +00:00
Aric Stewart
d8b20cf53b
Properly handle quoted number literals in MSI condition statements.
2004-07-12 23:31:18 +00:00
Hans Leidekker
ba848ac195
Fix command line parsing.
2004-07-12 20:43:09 +00:00
Mike McCormack
bb1194aeec
Minor spelling fix.
2004-07-12 19:53:54 +00:00
Mike McCormack
36123b5564
Remove a piece of dead code causing a warning.
2004-07-12 19:53:05 +00:00
Mike McCormack
c90c781a32
Implement MsiVerifyPackage, cosmetic fixes.
2004-07-09 22:58:27 +00:00
Alexandre Julliard
a7a6f5f31c
Authors: Mike McCormack <mike@codeweavers.com>, Aric Stewart <aric@codeweavers.com>
...
Refcount all objects, and use pointers internally.
2004-07-09 22:25:34 +00:00
Alexandre Julliard
77b12768c9
Authors: Aric Stewart <aric@codeweavers.com>, Mike McCormack <mike@codeweavers.com>
...
Write the encoded GUIDs for product registration in the Installer
registry.
2004-07-09 19:43:29 +00:00
Aric Stewart
a3149f83f7
Cleanup of actions.
2004-07-09 19:38:40 +00:00
Aric Stewart
20557b8c46
Add a stub for MsiModifyView, fix a couple of bugs.
2004-07-09 19:33:45 +00:00
Mike McCormack
3ece2461ef
Cosmetic fixes.
2004-07-09 19:33:25 +00:00
Aric Stewart
7231a439b4
Implement logging.
2004-07-09 19:26:30 +00:00
Mike McCormack
c4d7c8daa0
Allow binary fields with stream names longer than table names.
2004-07-06 19:00:46 +00:00
Aric Stewart
2cf222f9b7
Implemented CreateShortcut and PublishProduct.
2004-07-06 19:00:23 +00:00
Mike McCormack
24e9a34494
Fetch binary streams at the table level.
2004-07-06 18:56:12 +00:00
Aric Stewart
d784600d81
MsiGetProperty should return empty strings on error.
2004-07-06 18:54:38 +00:00
Aric Stewart
8f0a761948
Implemented registering Classes and ProgID.
2004-07-06 18:53:11 +00:00
Aric Stewart
fcb20c53f7
Implemented RegisterTypeLibraries.
2004-07-06 18:51:16 +00:00
Aric Stewart
b942e18636
Implemented ProcessComponents.
2004-07-06 18:50:02 +00:00
Aric Stewart
d2c395ad50
Send progress and action messages.
2004-07-06 18:48:15 +00:00
Aric Stewart
5b936ca2fd
Allow ADDLOCAL to override INSTALLLEVEL, implement LaunchConditions.
2004-07-06 18:47:09 +00:00
Aric Stewart
1ab0e4183e
Fix bugs in resolve_folder.
2004-07-06 18:42:56 +00:00
Aric Stewart
7d3e5973fe
Activate features and components based on their various conditions.
2004-07-04 00:36:58 +00:00
Aric Stewart
ec688fb4e0
Beginnings of costing and organizing into components and features.
2004-07-04 00:35:52 +00:00
Aric Stewart
e2d4ea8141
Fix command line processing and folder paths.
2004-07-04 00:33:45 +00:00
Aric Stewart
bdb2955296
Fix MsiGetTargetPath, MsiGetSourcePath and MsiSetTargetPath.
2004-07-04 00:32:48 +00:00
Aric Stewart
2e9b5f7c07
Use the newly implemented UPDATE code to set properties.
2004-07-04 00:31:17 +00:00
Mike McCormack
11553baa63
Implement the UPDATE query.
2004-07-04 00:30:02 +00:00
Mike McCormack
f6492dc5ca
Create the WHERE part of a query in one function call.
2004-07-04 00:27:48 +00:00
Aric Stewart
ed7c4bc84c
Implement SetTargetPath, start the basics for tracking UI level.
2004-07-04 00:26:54 +00:00
Mike McCormack
6e2bca34cf
Cosmetic fixes.
2004-07-04 00:25:00 +00:00
Aric Stewart
36eee236ea
Start implementing Feature and Component level install control.
2004-07-04 00:07:13 +00:00
Mike McCormack
d3239926c2
Fix retrieval of nul records as strings.
2004-06-30 19:46:25 +00:00
Mike McCormack
99c2b9a994
Fix the INSERT query when inserting integers into a table.
2004-06-30 19:46:15 +00:00
Aric Stewart
eb0e0df908
Start implementing MsiOpenPackage.
2004-06-30 19:38:36 +00:00
Mike McCormack
de8674ec6f
Set the storage file's GUID so native MSI recognizes it.
...
Fix crash when inserting multiple columns that are invalid.
2004-06-30 18:42:02 +00:00
Mike McCormack
16abc780e6
Hack field types, fix ref counting.
2004-06-30 18:27:41 +00:00
Mike McCormack
b26087c30e
Fix buffer overflow.
2004-06-30 18:27:23 +00:00
Mike McCormack
abd259fd12
Fix the UPDATE query.
2004-06-30 18:24:33 +00:00
Aric Stewart
c95a6aa6de
Fix field numbering so the CREATE query works for multiple columns.
2004-06-30 18:24:21 +00:00
Aric Stewart
9cb2787a95
Fix the INSERT query.
2004-06-30 18:23:52 +00:00
Mike McCormack
ab519f2a2c
Make the SQL insert query work.
2004-06-30 18:18:27 +00:00
Steven Edwards
4679e78432
Fixed Extract prototype.
2004-06-30 18:16:35 +00:00
Aric Stewart
6e160f14dd
Implement MsiGetSourcePath.
...
Implement Binary and Dword data type for registry writing.
2004-06-29 04:07:22 +00:00
Aric Stewart
c75201f4a2
Handle custom actions type 1 and 2.
2004-06-29 04:04:13 +00:00
Mike McCormack
6fb0cee5d9
Dump database table names on startup.
2004-06-29 03:57:39 +00:00
Mike McCormack
7e168ee798
Fix refcounting of streams.
2004-06-29 03:49:54 +00:00
Aric Stewart
e95136b7e3
Implement MsiGetTargetPathA/W.
2004-06-29 03:44:01 +00:00
Mike McCormack
0eecfdef67
Allow reading records containing streams.
2004-06-29 03:41:28 +00:00
Mike McCormack
8079d2ae33
Fixed the way the parser takes input strings.
2004-06-28 23:57:11 +00:00
Aric Stewart
401bd3f772
Start implementing actions.
2004-06-28 20:34:35 +00:00
Mike McCormack
c0523aaa57
Pull the codepage from the string table.
2004-06-26 00:18:36 +00:00
Mike McCormack
fb3f40b962
Fix crash that occurred when an invalid query string was deleted
...
twice.
2004-06-26 00:18:23 +00:00
Mike McCormack
9d66d94780
Implement queries by string value.
2004-06-26 00:11:08 +00:00
Francois Gouget
497709b9bb
Assorted spelling and case fixes.
2004-06-15 20:26:45 +00:00
Christian Costa
7c1ca0f923
Added version info to MSI dll.
2004-05-18 20:41:47 +00:00
Patrik Stridvall
070db4e5de
Fixed some issues found by winapi_check.
2004-05-17 21:08:31 +00:00
Raphael Junqueira
18cdbf1351
- add some prototypes/typedefs to msi.h
...
- implements some A -> W calls (W calls must be implemented)
2004-04-28 00:29:25 +00:00
Francois Gouget
6a6c85c6d8
Make Unicode const strings static so they are not copied to the stack
...
each time we enter the function.
2004-04-19 20:12:14 +00:00
Hans Leidekker
c2da57e27b
Correct spec entry for MsiLoadString*.
...
Pseudo stubs for MsiLocateComponent*.
2004-04-12 22:06:12 +00:00
Hans Leidekker
c1d1eb2434
Correct spec entry for DllGetClassObject.
2004-04-09 19:05:34 +00:00
Raphael Junqueira
9191a9cd95
Implement DllGetClassObject, DllRegisterServer, DllUnregisterServer
...
(as the interfaces aren't documented we only have stubs).
2004-03-30 20:42:06 +00:00
Alexandre Julliard
9e4ed6460c
.spec.c files are no longer used for 32-bit dlls.
2004-03-24 03:36:44 +00:00
Mike McCormack
ce533b7a70
Start implementing the SQL insert query.
2004-03-20 19:18:46 +00:00
Mike McCormack
943a71e453
Fix handle allocation and the CREATE TABLE query.
2004-03-19 19:14:12 +00:00
Mike McCormack
068b4ec7d4
First go at write support.
2004-03-19 01:16:36 +00:00
Mike McCormack
b040e4bcd2
When loading table data, split it up into rows.
2004-03-18 04:04:08 +00:00
Mike McCormack
f5e1c13070
Move the string table out into a separate file, improve lookups.
2004-03-17 20:49:59 +00:00
Dmitry Timoshkov
e51779df68
Explicitly specify output file names for bison.
2004-03-16 19:38:19 +00:00
Mike McCormack
14ec526004
Extend the parser to deal with the CREATE TABLE query. The query
...
doesn't do anything as yet.
2004-03-16 19:18:22 +00:00
Mike McCormack
af54ef9ce1
Start implementation of MsiEvaluateConditionA/W.
2004-03-16 03:23:43 +00:00
Christian Costa
fabcd27800
Added some stubs.
2004-02-17 21:05:44 +00:00
Alexandre Julliard
20b4585e3c
Only link against libdxguid where necessary.
2004-01-27 00:11:16 +00:00
Alexandre Julliard
502f6c5634
Removed incorrect uses of DUMMYUNIONNAME.
2004-01-07 00:47:35 +00:00
Mike McCormack
bd9d8a32e4
MsiOpenDatabase's szPersist parameter may be a string or a bitmask.
2003-11-05 01:50:19 +00:00
Mike McCormack
d48f3b60fe
Stub implementation for MsiVerifyPackage.
2003-11-05 01:42:02 +00:00
Mike McCormack
05d00f06de
Implement MsiOpenProductW.
2003-11-05 00:34:51 +00:00
Mike McCormack
e40da9f17c
Some stub implementations.
2003-10-30 22:47:42 +00:00
Mike McCormack
6e86a2a81a
Sql tokens are case insensitive in msi.dll.
2003-10-30 22:46:59 +00:00
Mike McCormack
367462798a
Treat missing MSI tables as empty.
2003-10-28 21:49:06 +00:00
Mike McCormack
3871395140
Fixed MSI buffer overflow.
2003-10-28 21:43:14 +00:00
Mike McCormack
717107bb65
Fix string value lookups in MSI.
2003-10-28 21:09:10 +00:00
Dmitry Timoshkov
2581db8f6a
Fixed some problems found while compiling and linking Wine under
...
Cygwin.
2003-10-14 05:27:43 +00:00
Daniel Marmier
4034ff36c0
Fixed warnings with gcc option "-Wwrite-strings".
2003-10-14 01:19:27 +00:00
Dimitrie O. Paun
fbdfd910c1
Remove SYMBOLFILE and LDDLLFLAGS from Makefiles.
2003-10-11 01:09:15 +00:00
Mike McCormack
afc02109a0
Fixed msi spec file.
2003-10-03 04:28:35 +00:00
Mike McCormack
f92deed281
Remove references to HEAP_strdupAtoW.
2003-09-27 02:24:31 +00:00
Francois Gouget
ae50013017
Fix the case of product and company names.
2003-09-08 19:38:45 +00:00
Alexandre Julliard
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Robert Reif
b7945a8ab3
Added a few stub implementations.
2003-09-01 23:57:06 +00:00
Robert Reif
528e6e9836
Added some missing functions.
2003-08-29 22:12:44 +00:00
Alexandre Julliard
985ba8ed87
Added missing dependency.
2003-08-15 03:52:35 +00:00
Mike McCormack
6386edc5d8
Partial implementation of the Microsoft Installer (msi.dll).
2003-08-13 01:27:48 +00:00