Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


Hi,

On Windows Vista and later, the VC 9.0 runtime files are installed to the
WinSxS cache as global assemblies. In Windows Installer, it is not possible to
use global assemblies until the installation transaction has been commited.
This means that only commit custom actions or custom actions sequenced to run
after InstallFinalize will be able to use global assemblies that are being
installed as part of the same MSI.

Possible workarounds:
1) Run RegisterExtensions custom action after InstallFinalize
2) Link VC runtime statically to unopkg.exe and unopkg.bin
3) Install private copy of msvcr90.dll next to unopkg.exe.

I chose option 1.

http://cgit.freedesktop.org/libreoffice/core/commit/?id=b3d63df541ff6b2bf9c77699c8c076ebcde2d6cf

The patch works well on Jesus' Windows 2008 Server VM, that he sent me
on Friday. I could not reproduce the bug with my VMs, because the bug
does not occur on Windows XP, and VMWare installs VC 9.0 runtime with
its VMWare Tools. When I realized this, I wanted to manually remove VC
9.0 runtime files form WinSxS, but then came Jesus' VM, I reproduced
the bug, and found the fix. Thanks, Jesus.

Best regards,
Andras

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.