[Bug 17212] Acronis True Image 11 Home installer fails (separation of msi client and server side custom actions)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Dec 22 07:44:40 CST 2011


http://bugs.winehq.org/show_bug.cgi?id=17212

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|ntoskrnl                    |msi
                 CC|                            |focht at gmx.net
     Ever Confirmed|0                           |1
            Summary|Acronis True Image Home     |Acronis True Image 11 Home
                   |does not work               |installer fails (separation
                   |                            |of msi client and server
                   |                            |side custom actions)
           Severity|enhancement                 |normal

--- Comment #17 from Anastasius Focht <focht at gmx.net> 2011-12-22 07:44:40 CST ---
Hello,

confirming, still present.

The main problem seem to be data files created by custom actions.
The property "MsiSuppCustomActionData" points to the temporary file.

Fortunately I found msi log of Acronis TrueImage installation on Windows which
helps to determine the reason.

(unicode logfile)

http://www.acronis.com/r/support/en/kb/667/snapapi_0_78.log.txt

The first custom action "MsiCheckSerial" that uses "MsiSuppCustomActionData":

--- snip ---
Action start 8:31:52: CheckSerialTypeContinue_CustomAction.
MSI (c) (B4:5C) [08:31:52:327]: Invoking remote custom action. DLL:
S:\DOCUME~1\ADMINI~1.CQ\LOCALS~1\Temp\MSIBB6A.tmp, Entrypoint: MsiCheckSerial
MSI (c) (B4!44) [08:31:52:343]: PROPERTY CHANGE: Adding MsiSuppCustomActionData
property. Its value is 'S:\DOCUME~1\ADMINI~1.CQ\LOCALS~1\Temp\tmpBB6B.tmp'.
MSI (c) (B4!44) [08:31:52:343]: PROPERTY CHANGE: Modifying PIDCHECK property.
Its current value is '0'. Its new value: '1'.
MSI (c) (B4!44) [08:31:52:343]: PROPERTY CHANGE: Adding PidKeyData property.
Its value is '103  2 12  2 31120  6 20 29 18  5120  4  1 27 22  7120 31 22 97 
5 18120 31 30 22 17 19'.
MSI (c) (B4!44) [08:31:52:343]: PROPERTY CHANGE: Adding CA_CHECKSERIAL_KEYDATA
property. Its value is '103  2 12  2 31120  6 20 29 18  5120  4  1 27 22  7120
31 22 97  5 18120 31 30 22 17 19'.
Action ended 8:31:52: CheckSerialTypeContinue_CustomAction. Return value 1.
--- snip ---

Another custom action "CADataInitCA" - now on the msi _server_ side "(s)":

--- snip ---
Action 8:32:07: CADataInitCA. 
Action start 8:32:07: CADataInitCA.
MSI (s) (7C:64) [08:32:07:952]: Invoking remote custom action. DLL:
S:\WINDOWS\Installer\MSIBB72.tmp, Entrypoint: CADataInit
MSI (s) (7C!94) [08:32:07:967]: PROPERTY CHANGE: Adding MsiSuppCustomActionData
property. Its value is 'S:\DOCUME~1\ADMINI~1.CQ\LOCALS~1\Temp\tmpBB73.tmp'.
MSI (s) (7C!94) [08:32:07:967]: PROPERTY CHANGE: Adding CADataDoneCommitCA
property. Its value is 'S:\DOCUME~1\ADMINI~1.CQ\LOCALS~1\Temp\tmpBB73.tmp'.
MSI (s) (7C!94) [08:32:07:967]: PROPERTY CHANGE: Adding CADataDoneRollbackCA
property. Its value is 'S:\DOCUME~1\ADMINI~1.CQ\LOCALS~1\Temp\tmpBB73.tmp'.
MSI (s) (7C!94) [08:32:07:967]: PROPERTY CHANGE: Adding RemovePackageNameCA
property. Its value is 'S:\DOCUME~1\ADMINI~1.CQ\LOCALS~1\Temp\tmpBB73.tmp'.
Action ended 8:32:07: CADataInitCA. Return value 1.
--- snip ---

Because this is on server side, the "MsiSuppCustomActionData" property from
client side custom action is not visible.
Hence "MsiSuppCustomActionData" is newly added and points to different
filename.

On Wine this happens:

Custom action "MsiCheckSerial"

--- snip ---
002a:trace:msi:ACTION_CallDllFunction calling L"MsiCheckSerial" 
...
002a:trace:msi:MSI_GetProperty 1 L"MsiSuppCustomActionData" 0x1211280 0x1e9c374 
...
002a:Call KERNEL32.GetTempFileNameW(01e9d280
L"C:\\users\\focht\\Temp\\",019da0e8 L"tmp",00000000,01e9d280) ret=019c0385
002a:Ret  KERNEL32.GetTempFileNameW() retval=0000d6ec ret=019c0385 
...
002a:Call KERNEL32.CreateFileW(019ebfe8
L"\\\\?\\C:\\users\\focht\\Temp\\tmpd6ec.tmp",c0000000,00000000,00000000,00000002,00000080,00000000)
ret=019a2420
002a:Ret  KERNEL32.CreateFileW() retval=00000298 ret=019a2420 
...
002a:Call KERNEL32.WriteFile(00000298,019daa60,00000003,01e9d204,00000000)
ret=0199edd3
002a:Ret  KERNEL32.WriteFile() retval=00000001 ret=0199edd3 
...
002a:Call KERNEL32.CloseHandle(00000298) ret=0199f92c
002a:Ret  KERNEL32.CloseHandle() retval=00000001 ret=0199f92c 
...
002a:Call msi.MsiSetPropertyW(00000002,019d9e4c
L"MsiSuppCustomActionData",019edb48 L"C:\\users\\focht\\Temp\\tmpd6ec.tmp")
ret=019bdbab 
...
--- snip ---

Custom action "CADataInit"

--- snip ---
0032:trace:msi:ACTION_CallDllFunction calling L"CADataInit" 
...
0032:Call msi.MsiGetPropertyW(00000002,01c5715c
L"MsiSuppCustomActionData",01c5624c,01e9d658) ret=01c16325 
...
0032:trace:msidb:MSI_RecordSetStringW 0x1236648 1
L"C:\\users\\focht\\Temp\\tmpd6ec.tmp" 
...
0032:Call KERNEL32.CreateFileW(01c74d00
L"\\\\?\\C:\\users\\focht\\Temp\\tmpd6ec.tmp",c0000000,00000000,00000000,00000003,00000080,00000000)
ret=01c2bc60
0032:Ret  KERNEL32.CreateFileW() retval=ffffffff ret=01c2bc60 
...
0032:trace:msi:DllThread custom action (32) returned 1603 
...
0025:trace:msi:MSI_ProcessMessage (nil) (nil) (nil) 0 10 L"Action ended
14:06:14: ExecuteAction. Return value 1603." 
...
--- snip ---

Because the property is still visible (both actions executed on client side),
the value is reused which leads to failure while creating the CA data file file
(ERROR_SHARING_VIOLATION).

This seems to be another instance of custom actions running separated on client
and server side.
Similar to bug 29354 (which might be technically a duplicate).

$ sha1sum TrueImage11.8053_s_en.exe 
61e8ad32e4fc05ceeb6a125f2c026323a73db032  TrueImage11.8053_s_en.exe

$ wine --version
wine-1.3.35-117-g27e3e1a

Regards

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
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