msi: Allow private properties from the AdminProperties property list.
This commit is contained in:
parent
39a7d40413
commit
ca71e5aff0
|
@ -288,7 +288,8 @@ static void ui_actioninfo(MSIPACKAGE *package, LPCWSTR action, BOOL start,
|
|||
msiobj_release(&row->hdr);
|
||||
}
|
||||
|
||||
UINT msi_parse_command_line( MSIPACKAGE *package, LPCWSTR szCommandLine )
|
||||
UINT msi_parse_command_line( MSIPACKAGE *package, LPCWSTR szCommandLine,
|
||||
BOOL preserve_case )
|
||||
{
|
||||
LPCWSTR ptr,ptr2;
|
||||
BOOL quote;
|
||||
|
@ -323,7 +324,10 @@ UINT msi_parse_command_line( MSIPACKAGE *package, LPCWSTR szCommandLine )
|
|||
prop = msi_alloc((len+1)*sizeof(WCHAR));
|
||||
memcpy(prop,ptr,len*sizeof(WCHAR));
|
||||
prop[len]=0;
|
||||
struprW(prop);
|
||||
|
||||
if (!preserve_case)
|
||||
struprW(prop);
|
||||
|
||||
ptr2++;
|
||||
|
||||
len = 0;
|
||||
|
@ -728,7 +732,7 @@ UINT MSI_InstallPackage( MSIPACKAGE *package, LPCWSTR szPackagePath,
|
|||
msi_set_sourcedir_props(package, FALSE);
|
||||
}
|
||||
|
||||
msi_parse_command_line( package, szCommandLine );
|
||||
msi_parse_command_line( package, szCommandLine, FALSE );
|
||||
|
||||
msi_apply_transforms( package );
|
||||
msi_apply_patches( package );
|
||||
|
|
|
@ -683,7 +683,8 @@ extern UINT ACTION_DialogBox( MSIPACKAGE*, LPCWSTR);
|
|||
extern UINT ACTION_ForceReboot(MSIPACKAGE *package);
|
||||
extern UINT MSI_Sequence( MSIPACKAGE *package, LPCWSTR szTable, INT iSequenceMode );
|
||||
extern UINT MSI_SetFeatureStates( MSIPACKAGE *package );
|
||||
extern UINT msi_parse_command_line( MSIPACKAGE *package, LPCWSTR szCommandLine );
|
||||
extern UINT msi_parse_command_line( MSIPACKAGE *package, LPCWSTR szCommandLine,
|
||||
BOOL preserve_case );
|
||||
|
||||
/* record internals */
|
||||
extern UINT MSI_RecordSetIStream( MSIRECORD *, UINT, IStream *);
|
||||
|
|
|
@ -754,7 +754,7 @@ static UINT msi_load_admin_properties(MSIPACKAGE *package)
|
|||
if (r != ERROR_SUCCESS)
|
||||
return r;
|
||||
|
||||
r = msi_parse_command_line(package, (WCHAR *)data);
|
||||
r = msi_parse_command_line(package, (WCHAR *)data, TRUE);
|
||||
|
||||
msi_free(data);
|
||||
return r;
|
||||
|
|
|
@ -504,7 +504,7 @@ static const CHAR adm_admin_exec_seq_dat[] = "Action\tCondition\tSequence\n"
|
|||
static const CHAR amp_component_dat[] = "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
|
||||
"s72\tS38\ts72\ti2\tS255\tS72\n"
|
||||
"Component\tComponent\n"
|
||||
"augustus\t\tMSITESTDIR\t0\tMYPROP=2718\taugustus\n";
|
||||
"augustus\t\tMSITESTDIR\t0\tMYPROP=2718 and MyProp=42\taugustus\n";
|
||||
|
||||
static const CHAR rem_component_dat[] = "Component\tComponentId\tDirectory_\tAttributes\tCondition\tKeyPath\n"
|
||||
"s72\tS38\ts72\ti2\tS255\tS72\n"
|
||||
|
@ -4240,7 +4240,8 @@ static void set_admin_property_stream(LPCSTR file)
|
|||
|
||||
/* AdminProperties */
|
||||
static const WCHAR stmname[] = {0x41ca,0x4330,0x3e71,0x44b5,0x4233,0x45f5,0x422c,0x4836,0};
|
||||
static const WCHAR data[] = {'M','Y','P','R','O','P','=','2','7','1','8',0};
|
||||
static const WCHAR data[] = {'M','Y','P','R','O','P','=','2','7','1','8',' ',
|
||||
'M','y','P','r','o','p','=','4','2',0};
|
||||
|
||||
MultiByteToWideChar(CP_ACP, 0, file, -1, fileW, MAX_PATH);
|
||||
|
||||
|
|
Loading…
Reference in New Issue