Mike McCormack
b075f03acb
Remove more types from the parser.
2005-05-30 11:32:18 +00:00
Mike McCormack
cac6387ca3
Add and correct some function declarations.
2005-05-30 11:12:24 +00:00
Francois Gouget
62253b752f
Assorted spelling fixes.
2005-05-30 09:56:56 +00:00
Mike McCormack
d1a55eb3f8
Get rid of some redundant parser types.
2005-05-29 20:17:16 +00:00
Mike McCormack
b58a098a11
-Wmissing-declarations and -Wwrite-strings warning fixes.
2005-05-29 20:08:12 +00:00
Alexandre Julliard
f271224f44
Authors: Mike McCormack <mike@codeweavers.com>, Aric Stewart <aric@codeweavers.com>
...
Add format record tests.
2005-05-27 19:25:42 +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
Aric Stewart
aa95731d6f
Restrict deformating of nested index keys [[1]].
...
Introduce the beginning of group deformating {}.
2005-05-27 19:23:29 +00:00
Mike McCormack
018bc9a0cd
Test and fix the size of stream fields in a record.
2005-05-27 09:26:13 +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
3594e45ab6
First pass at writing out CurVer keys for ProgIds. Also print a
...
message for the actions we skip. Lines up with native MSI output logs
for ease of comparison.
2005-05-26 16:08:58 +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
Aric Stewart
825920a090
Implement the [!file] format to produce the short filename.
2005-05-25 17:49:49 +00:00
Mike McCormack
3244265855
Simplify parsing of the FROM keyword.
2005-05-24 09:49:01 +00:00
Aric Stewart
bec5549da6
Double terminate SZ_MULTI properly.
...
ClassInfo and ExtensionInfo are also written for ADVERTISED
components.
2005-05-23 16:24:20 +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
Mike McCormack
b18c262d57
Improve parser error checking.
2005-05-23 16:23:11 +00:00
Mike McCormack
0093007b32
Track memory allocations in the SQL parser.
2005-05-23 12:08:17 +00:00
Mike McCormack
f50e9aadea
Simplify parsing of select query.
2005-05-23 11:49:49 +00:00
Mike McCormack
0d1c3a14fc
Create the ORDER BY view in a single call.
2005-05-23 10:27:00 +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
Stefan Leichter
f23029f647
Update version resource of msi.dll to current version shipped from
...
windows update.
2005-05-23 09:49:50 +00:00
Juan Lang
806be361d0
Turn handled errors from ERRs to WARNs or TRACEs.
2005-05-20 19:16:50 +00:00
Aric Stewart
d97e2c3058
We have a stub for MsiGetUserInfoA we should use it.
2005-05-20 18:59:20 +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
Aric Stewart
ec4df18833
Write the RegOwner and RegCompany keys as blank if they do not exist
...
when doing the RegisterUser action.
2005-05-20 18:59:01 +00:00
Aric Stewart
98e3808261
Fix quoting on queries.
...
Respect '+' and '*' in WriteRegistryValues to only create the key if
it does not already exist. Prevents overwriting values with NULL.
2005-05-20 09:40:42 +00:00
Aric Stewart
16b667ab01
Quoting fixes.
2005-05-20 09:40:14 +00:00
Aric Stewart
721c11a52a
Correct query quoting based on Mike's patch.
...
Also more error messages about return codes from custom actions and
ignore an error that we should be ignoring.
2005-05-20 09:40:02 +00:00
Mike McCormack
d31f12964b
Only tables can be backquoted, strings must be single quoted.
2005-05-19 11:15:37 +00:00
Juan Lang
88adb53bf0
Don't fail in RegisterFonts if the Fonts table is missing.
2005-05-19 11:15:24 +00:00
Aric Stewart
d5bfaf7897
A few small fixes.
2005-05-18 17:46:38 +00:00
Aric Stewart
c5a1443fd9
We cannot internally load the files in FileCost because that action
...
may be skipped or not called. So do it in CostInitialize.
Quote the file path in SelfRegModules.
Do not write squished null guids to the feature registration.
2005-05-18 17:46:12 +00:00
Aric Stewart
98d9cec74c
Correctly use short filenames from uncompressed file sources. Also
...
default feature and component install states to ABSENT instead of
UNKNOWN.
2005-05-18 13:23:52 +00:00
Aric Stewart
8a6a9a6659
Some error messages and strcmp changes suggested by Dmitry.
2005-05-18 09:44:38 +00:00
Aric Stewart
6186b2beaf
Correct a problem with parse_data if binary data was not in full bytes.
...
More properly handle uncompressed file sources, fix the creating and
parsing of Source Directories.
2005-05-16 21:37:35 +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
bd07966c8f
Avoid some non-standard str functions.
2005-05-11 12:58:22 +00:00
Stefan Leichter
f483ca611e
Added minimal implementation of MsiCreateAndVerifyInstallerDirectory.
2005-05-11 12:01:12 +00:00
Mike McCormack
c1f2cf1fba
- make sure to free the string table when closing the database
...
- don't free szPersist in MsiOpenDatabase if it's not a string
2005-05-10 16:00:19 +00:00
Juan Lang
ac0ba1a241
Partially implement AppSearch for RegLocator-type searches.
2005-05-10 08:27:00 +00:00
Aric Stewart
fa468e64d5
Fix a few leaking object handles.
2005-05-09 19:33:50 +00:00
Alexandre Julliard
34fa35dc99
Added rules for building import libraries in the individual dll
...
makefiles, and added support for building a .def.a static import
library too.
2005-05-09 14:42:30 +00:00
Alexandre Julliard
d62356aa1e
Added rules to build import libraries in the individual dll makefiles.
...
Generate import libraries with the right name right away instead of
using an intermediate .spec.def file.
2005-05-07 12:39:52 +00:00
Aric Stewart
2494e4a52a
Add a missing msiobj_release that was resulting in a leaked object
...
with each MsiCreateRecord call.
2005-05-07 12:13:08 +00:00
Aric Stewart
41fbee0e83
Correct a missing MsiCloseHandle().
2005-05-07 12:12:56 +00:00
Francois Gouget
63b596d7ea
Tweak the documentation to make winapi_check happy.
2005-05-06 14:33:02 +00:00
Marcus Meissner
1fa2da0756
Set PhysicalMemory property from system data.
2005-05-04 10:37:05 +00:00
Vincent Béron
0fa5e855fb
Use SUBLANG_NEUTRAL for French resources.
2005-05-04 09:52:47 +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
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
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
Mike McCormack
f47c0b2e29
Declare MsiExportDatabase* in the spec file, and fix a typo.
2005-04-26 14:30:15 +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
Mike McCormack
ae8c0ab55b
Test MsiSummaryInfoGetProperty reading an empty property.
2005-04-20 14:24:30 +00:00
Mike McCormack
7932d76a1d
Fix loading of the summary information.
2005-04-20 14:24:14 +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
Francois Gouget
3b36eee083
Add trailing '\n's to ok() calls.
2005-04-19 09:48:44 +00:00
Peter Berg Larsen
407409f27f
Remove 2 identicals calls to strlenW.
2005-04-18 15:36:59 +00:00
Peter Berg Larsen
6e3bcb5a54
Replace strncpy with memcpy or lstrcpyn.
2005-04-18 10:30:55 +00:00
Juan Lang
c33d2621eb
Log missing environment vars for easier debugging.
2005-04-12 10:15:09 +00:00
Steven Edwards
98efef18d4
Avoid using ver.h in favor of winver.h.
2005-04-11 16:10:33 +00:00
José Manuel Ferrer Ortiz
4f50a2c0dc
Spanish translations updated.
2005-04-11 13:01:46 +00:00
Mike McCormack
499a887d0f
Load and display bitmaps in the dialogs.
2005-04-11 12:47:20 +00:00
Francois Gouget
6b10c324c5
Assorted spelling fixes.
2005-03-30 17:08:31 +00:00
Aric Stewart
6e821739f2
Make sure the GUID of the typelib we are registering matches the guid
...
requested from MSI. If not search the given typelib file to find the
typelib requested to register.
2005-03-30 10:19:08 +00:00
Mike McCormack
180f04059b
Split out database functions, remove dependence on wine/unicode.h.
2005-03-29 11:28:57 +00:00
Peter Berg Larsen
e732fc023d
Janitorial: Get rid of strncpy/strncpyW.
2005-03-28 14:17:51 +00:00
Mike McCormack
30e388af51
Use strdup, implement MsiDatabaseImportA.
2005-03-25 16:38:26 +00:00
Jakob Eriksson
9ed61de9a2
Get rid of HeapAlloc casts.
2005-03-24 21:01:35 +00:00
Mike McCormack
77a19ed8e6
Replace instances of HeapAlloc/MultiByteToWideChar with the internally
...
defined strdupAtoW.
2005-03-24 19:04:06 +00:00
Aric Stewart
f8f64406fc
If running in UI mode, then display the UI mode dialogs at the end of
...
the installs.
2005-03-24 19:03:45 +00:00
Mike McCormack
bf0f6a22d2
Make sure there's only one place we allocate dialog controls.
2005-03-24 15:09:31 +00:00
Mike McCormack
c3ab871ff9
Clean up registry functions.
2005-03-24 15:09:18 +00:00
Francois Gouget
93416cdaf7
Assorted spelling fixes.
2005-03-23 13:15:18 +00:00
Marcus Meissner
6d32d63979
Fixed MsiDatabaseImportA, MsiDatabaseImportW, and
...
MsiCreateAndVerifyInstallerDirectory stub parameter counts.
2005-03-23 10:24:53 +00:00
Jakob Eriksson
4364d06821
Windows 98 doesn't like it when we delete the tempfile.
2005-03-22 18:16:53 +00:00
Aric Stewart
8760ed97f2
Test package creation.
2005-03-22 16:45:55 +00:00
Hans Leidekker
8cf1389409
Dutch resource translation.
2005-03-22 16:39:25 +00:00
Mike McCormack
4c20cc6f0f
- test cases for summary information
...
- fix memory leaks
2005-03-19 17:08:34 +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
35c65cf731
Fix a regression in AppSearch.
2005-03-10 17:24:20 +00:00
Juan Lang
3d4ce5c2c1
Implement MsiEnumRelatedProducts.
2005-03-10 17:24:05 +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
Ulrich Czekalla
e15e5179c2
Allocate space for terminating null.
2005-03-08 16:44:51 +00:00
Ulrich Czekalla
5f08b9f7b0
Fix a memory leak.
2005-03-08 16:23:36 +00:00
Ulrich Czekalla
64db533173
Add support for radio buttons.
2005-03-04 12:32:08 +00:00
Francois Gouget
fbb3343547
Assorted spelling fixes.
2005-03-02 13:53:50 +00:00
Alexandre Julliard
d0ee9f9309
Avoid spaces before preprocessor directives, that's not portable.
2005-03-02 12:23:20 +00:00
Aric Stewart
8e233e9b9f
Text reformatting patch to clean up all the static strings.
2005-03-01 11:45:19 +00:00
Juan Lang
014ad3ba21
Don't hardcode windows or system directories, correct a typo.
2005-03-01 10:41:52 +00:00
Dmitry Timoshkov
dd1ba8a7d8
Remove a temporary msi database file.
2005-02-26 17:41:36 +00:00
Jon Griffiths
eb5bf7dd38
Documentation spelling fixes.
2005-02-25 14:07:56 +00:00
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