[Bug 35539] New: Proteus 8 demo fails to install
wine-bugs at winehq.org
wine-bugs at winehq.org
Fri Feb 7 07:51:04 CST 2014
https://bugs.winehq.org/show_bug.cgi?id=35539
Bug ID: 35539
Summary: Proteus 8 demo fails to install
Product: Wine
Version: 1.7.11
Hardware: x86
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: msi
Assignee: wine-bugs at winehq.org
Reporter: focht at gmx.net
Classification: Unclassified
Hello folks,
split off from bug 34457
--- snip ---
$ WINEDEBUG=+tid,+seh,+relay,+msi wine ./prodemo.exe >>log.txt 2>&1
...
0037:trace:msi:ACTION_PerformUIAction Performing action
(L"WriteEnvironmentStrings")
...
0037:trace:msi:MSI_ProcessMessage (nil) (nil) (nil) 0 100 L"Action 13:24:18:
WriteEnvironmentStrings. Updating environment strings"
...
0037:trace:msi:MSI_DatabaseOpenViewW L"SELECT * FROM `Environment`" 0x33f7e8
...
0037:trace:msi:ITERATE_WriteEnvironmentString name L"!-*LXKSERVER" value (null)
...
0037:trace:msi:MSI_ProcessMessage (nil) (nil) (nil) 0 200 L"Name: LXKSERVER,
Value: , Action 0"
...
0037:trace:msi:ITERATE_WriteEnvironmentString name L"=-*LXKSERVER" value
L"[KEY_SERVER]"
...
0037:trace:msi:MSI_FormatRecordW L"[KEY_SERVER]"
...
0037:trace:msi:msi_get_property property L"KEY_SERVER" not found
...
0037:trace:msi:MSI_ProcessMessage (nil) (nil) (nil) 0 200 L"Name: LXKSERVER,
Value: , Action 0"
...
0037:trace:msi:MSI_ProcessMessage (nil) (nil) (nil) 0 10 L"Action ended
13:24:18: WriteEnvironmentStrings. Return value 14."
...
0037:err:msi:ITERATE_Actions Execution halted, action
L"WriteEnvironmentStrings" returned 14
--- snip ---
"Environment" msi table dump with ORCA:
--- snip ---
Environment Name Value Component_
s72 l255 L255 s72
LXKSERVER !-*LXKSERVER APPFRAME.DLL
LXKSERVER_1 =-*LXKSERVER [KEY_SERVER] APPFRAME.DLL
--- snip ---
The first one has no value -> skipped (ok).
The second one has a value and is getting deformatted ... unfortunately
'KEY_SERVER' property is not set at this point, resulting in failure.
I found only one occurrence of this property 'KEY_SERVER' in msi tables:
"Control" msi table:
--- snip ---
KeyServerDlg Edit_1 Edit 101 112 125 18 3 KEY_SERVER
{260} Bitmap
--- snip ---
The unattended install using explicit command line property works, see:
http://www.softnual.com/html/pds/network-installation.htm
--- quote ---
Where a server license and dongle are installed the KEY_SERVER property can be
set on the command line to point to the licence key server. If set this will
set the environment variable, if not set the variable will be cleared.
--- quote ---
If I pass the property via command line it finishes successfully:
--- snip ---
$ wine msiexec -i setup_demo8.1.17358.0.msi KEY_SERVER=test
...
$ fixme:wshom:WshShell3_RegWrite
(L"HKLM\\SYSTEM\\CurrentControlSet\\Control\\Session
Manager\\Environment\\LXKSERVER" {VT_BSTR: L"test"} {vt 10}): stub
--- snip ---
For UI install, the 'KeyServerDlg' is referenced from 'LicenseKeyTypeDlg' which
is referenced from 'LicenseAgreementDlg':
--- snip ---
LicenseAgreementDlg Back NewDialog WelcomeDlg AI_INSTALL AND
LicenseAgreementDlg_Cond 1
LicenseAgreementDlg Next NewDialog SetupTypeDlg AI_INSTALL AND
LicenseAgreementDlg_Cond 3
LicenseAgreementDlg Next NewDialog LicenseKeyTypeDlgAI_INSTALL
AND LicenseAgreementDlg_Cond AND LicenseKeyTypeDlg_Cond 4
LicenseAgreementDlg Next [LicenseKeyTypeDlg_Cond] 1 Family <>
"Demonstration" 2
LicenseAgreementDlg Next [LicenseKeyTypeDlg_Cond] {} 1 1
LicenseAgreementDlg Cancel SpawnDialog CancelDlg 1 100
LicenseAgreementDlg PrintButton DoAction AI_PrintRtf 1 2
LicenseAgreementDlg PrintButton [AI_PRINT_RTF]
LicenseAgreementDlg#AgreementText 1 1
--- snip ---
'SetupTypeDlg' is selected for 'next' button instead of 'LicenseKeyTypeDlg':
--- snip ---
0037:trace:msi:msi_set_property 0x1437c0 L"LicenseAgreementDlg_Cond" L"1" -1
...
0037:trace:msi:MSI_EvaluateConditionW 1 <- L"AI_INSTALL AND
LicenseAgreementDlg_Cond"
...
0037:trace:msi:msi_dialog_send_event Sending control event L"NewDialog"
L"LicenseAgreementDlg"
...
0037:trace:msi:MSI_EvaluateConditionW L"AI_INSTALL AND LicenseAgreementDlg_Cond
AND LicenseKeyTypeDlg_Cond"
...
0037:trace:msi:msi_get_property returning L"1" for property L"AI_INSTALL"
...
0037:trace:msi:msi_get_property returning L"1" for property
L"LicenseAgreementDlg_Cond"
...
0037:trace:msi:msi_get_property property L"LicenseKeyTypeDlg_Cond" not found
...
0037:trace:msi:MSI_EvaluateConditionW 0 <- L"AI_INSTALL AND
LicenseAgreementDlg_Cond AND LicenseKeyTypeDlg_Cond"
...
0037:trace:msi:MSI_EvaluateConditionW 1 <- L"AI_INSTALL AND
LicenseAgreementDlg_Cond"
0037:trace:msi:msi_dialog_send_event Sending control event L"NewDialog"
L"SetupTypeDlg"
--- snip ---
'LicenseKeyTypeDlg_Cond' is tied to control 'Event':
--- snip ---
LicenseAgreementDlg Next [LicenseKeyTypeDlg_Cond] 1 Family <>
"Demonstration" 2
LicenseAgreementDlg Next [LicenseKeyTypeDlg_Cond] {} 1 1
--- snip ---
The event condition:
--- snip ---
0037:trace:msi:MSI_DatabaseOpenViewW L"SELECT * FROM ControlEvent WHERE
`Dialog_` = 'LicenseAgreementDlg' AND `Control_` = 'Next' ORDER BY `Ordering`"
0x33f240
...
0037:trace:msi:MSI_EvaluateConditionW L"1"
...
0037:trace:msi:COND_GetString Got identifier L"1"
...
0037:trace:msi:MSI_EvaluateConditionW 1 <- L"1"
...
0037:trace:msi:msi_set_property 0x1437c0 L"LicenseKeyTypeDlg_Cond" (null) -1
...
0037:trace:msi:msi_get_property property L"LicenseKeyTypeDlg_Cond" not found
0037:trace:msi:MSI_DatabaseOpenViewW L"DELETE FROM `_Property` WHERE
`_Property` = 'LicenseKeyTypeDlg_Cond'" 0x33f11c
...
0037:trace:msi:MSI_EvaluateConditionW L"Family <> \"Demonstration\""
...
0037:trace:msi:COND_GetString Got identifier L"Family"
...
0037:trace:msi:msi_get_property returning (null) for property L"Family"
...
0037:trace:msi:msi_get_property returning L"Demonstration" for property
L"Family"
...
0037:trace:msi:COND_GetLiteral Got literal L"Demonstration"
...
0037:trace:msi:MSI_EvaluateConditionW 0 <- L"Family <> \"Demonstration\""
...
--- snip ---
'Family' property is hard coded by default to 'Demonstration' value.
Makes sense for demo app/installer.
Summing it up: at first glance everything looks ok.
Maybe it's another MSI client vs. server issue.
$ sha1sum prodemo.exe
e3409adbc80bd73a36f82890da2b7d16be2fbf51 prodemo.exe
$ du -sh prodemo.exe
166M prodemo.exe
$ wine --version
wine-1.7.11-306-g8f289c8
Regards
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list