Commit Graph

71 Commits

Author SHA1 Message Date
Mike McCormack
16466af791 gcc 4.0 -Wpointer-sign fixes. 2005-07-06 10:33:30 +00:00
Aric Stewart
b7dc53d462 Add source.c to start handling the various MsiSourceList apis used in
v3 of MSI, and now internally.
Update files.c to use the MsiSourceList apis to make sure our
SourceList keys in the registry are included and correct.
2005-07-05 21:00:06 +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
Mike McCormack
7e3918d53e Make the MSI icon control work. 2005-06-23 16:43:38 +00:00
Aric Stewart
71a55e04a3 Allow control events to return codes to halt the processing of event.
Needed for the SetTargetPath Event.
2005-06-17 21:31:06 +00:00
Mike McCormack
f9acfe635a Fixes for -Wmissing-declarations and -Wwrite-strings warnings. 2005-06-07 20:29:51 +00:00
Aric Stewart
19ba432b2b Add functions to add the User UpgradeCodes. 2005-06-07 20:02:27 +00:00
Mike McCormack
b402f04851 Use standard lists in the event subscription code. 2005-06-06 15:40:15 +00:00
Mike McCormack
6309892499 Create a helper function to fetch a single record from a query. 2005-06-02 10:29:28 +00:00
Mike McCormack
e8b21c3eed - avoid unicode.h
- add a missing function prototype
2005-06-01 11:02:19 +00:00
Mike McCormack
64de949cdd More -Wmissing-declarations and -Wwrite-strings warning fixes. 2005-05-31 09:30:28 +00:00
Aric Stewart
9cd707da3f Introduce really basic scripting of actions. This is primarily to get
the order of execution of the action correct since some custom actions
can be scripted and others are run during the script building phase.
2005-05-27 19:24:22 +00:00
Alexandre Julliard
d757bfeeaf Authors: Aric Stewart <aric@codeweavers.com>, Mike McCormack <mike@codeweavers.com>
Implement dialog events and hook up the dialog code.
2005-05-27 09:11:18 +00:00
Aric Stewart
6f43c18fe7 A big rewrite of the whole RegisterClass, RegisterProgId,
RegisterExtension and RegisterMIME actions. We now handle verbs
properly, handle dependancies and such properly and keep track of what
we need to register and what we do not properly.
2005-05-26 12:24:28 +00:00
Mike McCormack
0093007b32 Track memory allocations in the SQL parser. 2005-05-23 12:08:17 +00:00
Mike McCormack
7153c8fa65 - remove the unused utf8 field of an expression
- make the parse result a single assignment at top level of parsing
- abort parsing on a memory allocation failure
2005-05-23 09:53:43 +00:00
Aric Stewart
b39d8fc2a6 - ExecuteAction runs the whole Execute table and not just from
InstallValidate onward.  To do this make sure we do not do the
  costing initialization work again if it is already done (by checking
  the CostingComplete Property).
- A lot of work to refine feature states, setting the state affects
  the state of all child features and also respect features that want
  to default to something other than LOCAL.
2005-05-13 13:56:39 +00:00
Mike McCormack
07c74d07f3 Make sure that dialogs are only created and destroyed in a single
thread.
2005-04-27 10:16:57 +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
499a887d0f Load and display bitmaps in the dialogs. 2005-04-11 12:47:20 +00:00
Mike McCormack
758a69515b Implement summary information loading and saving. 2005-03-18 14:01:39 +00:00
Mike McCormack
95dea4969a - Rename dupstrW to strdupW, and remove duplicate definition.
- Move definition of string manipulation functions to msipriv.h.
2005-03-16 11:31:35 +00:00
Juan Lang
3d4ce5c2c1 Implement MsiEnumRelatedProducts. 2005-03-10 17:24:05 +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
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
Mike McCormack
fd91013b46 Add more dialog controls, do something when they're clicked on. 2005-02-02 09:55:51 +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
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
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
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
b3a7f37aaf Fix refcounting, use Interlocked functions. 2005-01-20 20:34:29 +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
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
Mike McCormack
9db0e072b1 Remove a lot of fixed length buffers. 2004-12-22 15:05:07 +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
Alexandre Julliard
25e2a320a7 Don't define BEGIN_INTERFACE in unknwn.h. 2004-08-22 21:38:46 +00:00
Hans Leidekker
4104c622af Set VersionMsi property.
Accept a dot in a number value.
2004-07-19 21:49:15 +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
7231a439b4 Implement logging. 2004-07-09 19:26:30 +00:00
Mike McCormack
24e9a34494 Fetch binary streams at the table level. 2004-07-06 18:56:12 +00:00
Aric Stewart
b942e18636 Implemented ProcessComponents. 2004-07-06 18:50:02 +00:00
Aric Stewart
ec688fb4e0 Beginnings of costing and organizing into components and features. 2004-07-04 00:35:52 +00:00
Aric Stewart
bdb2955296 Fix MsiGetTargetPath, MsiGetSourcePath and MsiSetTargetPath. 2004-07-04 00:32:48 +00:00