ОС - все Windows
При установка
LibreOffice запуском
LibO_3.3.0rc2_Win_x86_install.exe (
setup.exe) происходит установка лишнего компонента (только в 64-битных системах)
Microsoft Visual C++ 2008 Redistributable Package (x64) SP-1 и компонента
Microsoft Visual C++ 2008 Redistributable Package (x86) SP-1, версия которого не совпадает с той, которую использовали при компиляции пакета. При регистрации этого компонента,
Офис работоспособен. Если же компонент не зарегистрирован, но в
%windir%\WinSxS\ присутствуют
x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.30729.1_x-ww_6f74963e и в
\Manifests файл
x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.30729.1_x-ww_6f74963e.manifest, ЛО запускаться не будет. Если же присутствуют (без регистрации)
%windir%\WinSxS\\Manifests\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375.manifest и
%windir%\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375\msvcr90.dll - Офис полностью работоспособен. Привожу содержание ресурса Манифест из
ЕХЕ-файлов
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
</requestedPrivileges>
</security>
</trustInfo>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
</dependentAssembly>
</dependency>
</assembly>
Возможное решение проблемы - включение
msvcr90.dll и её
x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8.manifest в состав основного пакета, устанавливаемого
МСИ-файлом. Такое решение используется
OOo-***_infra.
Побочный эфект текущего состава пакета -
Офис, установленный из Панели управления запуском libreoffice33.msi из папки с распакованным дистрибутивом (нормальный способ установки для серверных и 64-битных версий ОС Windows), запускаться не будет.
-----------------------------
Уточняю по
красному:
Так как
возможность запуска Офисного пакета
зависит от наличия в операционной системе
необязательной для неё (ОС)
библиотеки msvcr90.dll,
которая при запуске приложения загружается в оперативную память; отсутствие таковой (размер с манифестом ~800кб) в дистрибутиве -
ОШИБКА!
Поясню примером. Я установил разрекламированную Новую программу, инсталлятор которой тупо продублировал установку vcred.exe. Прога мне не понравилась и я её удалил. Деинсталлятор Новой программы также тупо удалил и Новую программу, и компонент x86_Microsoft.VC90.CRT. В результате - Офис не запускается, а я с дрожью в голосе донимаю местного Гуру.