I have tracked down what's going on using Process Monitor. MsiExec is shooting itself in the foot using RunOnce. Here's what happens ...
MsiExec creates a folder with a random 7-digit decimal number name ... C:\Windows\WinSxS\InstallTemp\5755208 ... adds a registry entry ... HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\WinSideBySideSetu pCleanup 5755208 ... and extracts all of the Win32 shared SxS assembly's files (.cat, .manifest, .dll's) to this folder. MsiExec spawns copies of itself using "-Embedding", one of which installs the driver. After installing the driver this spawned MsiExec process spawns runonce.exe which scans the registry and spawns rundll32.exe with the command line ... "C:\WINDOWS\system32\rundll23.exe" sxs.dll,SxspRunDllDeleteDirectory C:\Windows\WinSxS\InstallTemp\57552078 ... which successfully smokes everything the original MsiExec process extracted. Shortly after this the original MsiExec process creates another InstallTemp folder ... C:\Windows\WinSxS\InstallTemp\5920167\Manifests ... and attempts to open the manifest file that it extracted to the first temp folder ... C:\Windows\WinSxS\InstallTemp\5755208\DigitalRapids.Hardware.API.manifes t ... which returns PATH_NOT_FOUND (0x80070003) and everything to come to a grinding halt. If anyone has any suggestions for a workaround or knows of any obscure requirements or procedures related to Win32 shared SxS assemblies I would very much appreciate hearing from you. If anyone has a Microsoft contact that can/will help I would very much appreciate it if this information was forwarded to them. Cheers, Steve -----Original Message----- From: Wilson, Phil [mailto:phil.wil...@invensys.com] Sent: April 2, 2010 1:59 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] MSI error 1935 (0x80070003)installing sharedWin32 assembly - but only when installerincludes DifxAppdriver component This is the dreaded 1935 assembly install error. Have you got an AV app running? Aaron Stebner's blog has a lot of entries on possibilities for this, but AV seems more likely in your case. Phil Wilson -----Original Message----- From: Stephen Paterson [mailto:stephen.pater...@digital-rapids.com] Sent: Thursday, April 01, 2010 5:13 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] MSI error 1935 (0x80070003) installing sharedWin32 assembly - but only when installer includes DifxAppdriver component Thanks Phil, Sorry, when I said "the app" I meant the app and VC9 merge modules (i.e. 1+2+3 works, 1+2+4 works, 1+2+3+4 fails). There are no runtime dependencies, the installed sxs assembly is not used by any custom action. I'm currently testing on XP SP3. The error occurs in InstallFinalize. A few lines after the error in the log ... >> Action ended 23:30:10: InstallFinalize. Return value 3. When I compare the log for a successful install of the assembly (1+2+3) to the log for a failed install (1+2+3+4) it looks like the assembly is installed in both cases but then this path-not-found failure pops out of nowhere and everything rolls back. Successful ... MSI (s) (24:18) [09:10:53:638]: Entering CMsiConfigurationManager::SetLastUsedSource. MSI (s) (24:18) [09:10:53:638]: Specifed source is already in a list. MSI (s) (24:18) [09:10:53:638]: User policy value 'SearchOrder' is 'nmu' MSI (s) (24:18) [09:10:53:638]: Machine policy value 'DisableBrowse' is 0 MSI (s) (24:18) [09:10:53:638]: Machine policy value 'AllowLockdownBrowse' is 0 MSI (s) (24:18) [09:10:53:638]: Adding new sources is allowed. MSI (s) (24:18) [09:10:53:638]: Set LastUsedSource to: C:\Test\. MSI (s) (24:18) [09:10:53:638]: Set LastUsedType to: n. MSI (s) (24:18) [09:10:53:638]: Set LastUsedIndex to: 1. MSI (s) (24:18) [09:10:53:638]: Executing op: End(Checksum=0,ProgressTotalHDWord=0,ProgressTotalLDWord=1943808) MSI (s) (24:18) [09:10:54:325]: User policy value 'DisableRollback' is 0 MSI (s) (24:18) [09:10:54:325]: Machine policy value 'DisableRollback' is 0 Action 9:10:54: RollbackCleanup. Removing backup files MSI (s) (24:18) [09:10:54:325]: Calling SRSetRestorePoint API. dwRestorePtType: 0, dwEventType: 103, llSequenceNumber: 493, szDescription: "". MSI (s) (24:18) [09:10:54:325]: The call to SRSetRestorePoint API succeeded. Returned status: 0. MSI (s) (24:18) [09:10:54:325]: Unlocking Server MSI (s) (24:18) [09:10:54:325]: PROPERTY CHANGE: Deleting UpdateStarted property. Its current value is '1'. Action ended 9:10:54: InstallFinalize. Return value 1. Failure ... MSI (s) (60:80) [23:30:06:520]: Entering CMsiConfigurationManager::SetLastUsedSource. MSI (s) (60:80) [23:30:06:520]: Specifed source is already in a list. MSI (s) (60:80) [23:30:06:520]: User policy value 'SearchOrder' is 'nmu' MSI (s) (60:80) [23:30:06:520]: Machine policy value 'DisableBrowse' is 0 MSI (s) (60:80) [23:30:06:520]: Machine policy value 'AllowLockdownBrowse' is 0 MSI (s) (60:80) [23:30:06:520]: Adding new sources is allowed. MSI (s) (60:80) [23:30:06:520]: Set LastUsedSource to: C:\Test\. MSI (s) (60:80) [23:30:06:520]: Set LastUsedType to: n. MSI (s) (60:80) [23:30:06:520]: Set LastUsedIndex to: 1. MSI (s) (60:80) [23:30:06:520]: Executing op: End(Checksum=0,ProgressTotalHDWord=0,ProgressTotalLDWord=7538112) MSI (s) (60:80) [23:30:06:551]: Assembly Error:The system cannot find the path specified. MSI (s) (60:80) [23:30:06:551]: Note: 1: 1935 2: {F7558C3E-FF82-4572-A69D-0CFFB19DEDDD} 3: 0x80070003 4: IAssemblyCacheItem 5: Commit 6: DigitalRapids.Hardware.API,version="0.1.0.0",type="win32",processorArchi tecture="x86",publicKeyToken="d394d925a47a53c5" Error 1935. An error occurred during the installation of assembly 'DigitalRapids.Hardware.API,version="0.1.0.0",type="win32",processorArch itecture="x86",publicKeyToken="d394d925a47a53c5"'. Please refer to Help and Support for more information. HRESULT: 0x80070003. assembly interface: IAssemblyCacheItem, function: Commit, component: {F7558C3E-FF82-4572-A69D-0CFFB19DEDDD} MSI (s) (60:80) [23:30:10:692]: Product: Digital Rapids DRHwAPITest 1.4.0 -- Error 1935. An error occurred during the installation of assembly 'DigitalRapids.Hardware.API,version="0.1.0.0",type="win32",processorArch itecture="x86",publicKeyToken="d394d925a47a53c5"'. Please refer to Help and Support for more information. HRESULT: 0x80070003. assembly interface: IAssemblyCacheItem, function: Commit, component: {F7558C3E-FF82-4572-A69D-0CFFB19DEDDD} Action ended 23:30:10: InstallFinalize. Return value 3. Cheers, Steve ________________________________ From: Wilson, Phil [mailto:phil.wil...@invensys.com] Sent: Thu 2010-04-01 6:51 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] MSI error 1935 (0x80070003) installing sharedWin32 assembly - but only when installer includes DifxAppdriver component VC 9.0 merge modules and SxS assemblies (VC 9.0 merge modules install in WinSxS too) are not available to custom action code on Vista and later because they're not really available until InstallFinalize and commit. You haven't said if there are run-time dependencies, and I don't know if the app and the assembly means 1, 2, and 3, but I think it does. What's happening when that error occurs? What action is it doing? Phil Wilson -----Original Message----- From: Stephen Paterson [mailto:stephen.pater...@digital-rapids.com] Sent: Thursday, April 01, 2010 2:40 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] MSI error 1935 (0x80070003) installing shared Win32 assembly - but only when installer includes DifxApp driver component I'm using WiX 3.0.5419.0 to generate an MSI that installs ... 1) an MFC app 2) the required VC9 merge modules 3) a Win32 shared SxS assembly 4) a DifxApp driver package. I can build an installer that will successfully install and uninstall the app and the driver I can build an installer that will successfully install and uninstall the app and the assembly. However, when both the assembly and the driver are included the installer fails shortly after the driver update completes and rolls back. >> MSI (s) (60:80) [23:30:06:551]: Assembly Error:The system cannot find the path specified. I have MSI logs and source... If this sounds like something you might know about let me know what you'd like to see, I'd really appreciate the help. Cheers, Steve ------------------------------------------------------------------------ ------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users *** Confidentiality Notice: This e-mail, including any associated or attached files, is intended solely for the individual or entity to which it is addressed. This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify the sender immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person. This email comes from a division of the Invensys Group, owned by Invensys plc, which is a company registered in England and Wales with its registered office at Portland House, Bressenden Place, London, SW1E 5BF (Registered number 166023). For a list of European legal entities within the Invensys Group, please go to http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&prev_i d=77. You may contact Invensys plc on +44 (0)20 7821 3848 or e-mail inet.hqhelpd...@invensys.com. This e-mail and any attachments thereto may be subject to the terms of any agreements between Invensys (and/or its subsidiaries and affiliates) and the recipient (and/or its subsidiaries and affiliates). ------------------------------------------------------------------------ ------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users *** Confidentiality Notice: This e-mail, including any associated or attached files, is intended solely for the individual or entity to which it is addressed. This e-mail is confidential and may well also be legally privileged. If you have received it in error, you are on notice of its status. Please notify the sender immediately by reply e-mail and then delete this message from your system. Please do not copy it or use it for any purposes, or disclose its contents to any other person. This email comes from a division of the Invensys Group, owned by Invensys plc, which is a company registered in England and Wales with its registered office at Portland House, Bressenden Place, London, SW1E 5BF (Registered number 166023). For a list of European legal entities within the Invensys Group, please go to http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&prev_i d=77. You may contact Invensys plc on +44 (0)20 7821 3848 or e-mail inet.hqhelpd...@invensys.com. This e-mail and any attachments thereto may be subject to the terms of any agreements between Invensys (and/or its subsidiaries and affiliates) and the recipient (and/or its subsidiaries and affiliates). ------------------------------------------------------------------------ ------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users