Одним из наших приложений является приложение VB6, для которого требуется Tabctl32.ocx.Самостоятельный ремонт MSI для пользователя, не являющегося администратором, когда Tabctl32 был установлен с помощью модуля слияния
Так что я добавил «tabctl32.msm» (который содержал его с версией 6.1.97.82) для Wix на основе машин. Когда я запускал этот MSI для каждой машины, он установил, что OCX и приложение отлично работали, когда я был зарегистрирован как администратор и запустил приложение VB.
Однако, если кто-либо со стандартными правами пользователя зарегистрировался и впервые запустил это приложение VB, он вызвал саморемонт MSI. Как только саморемонт завершен для этого пользователя, он работал и больше не запускал саморемонт для этого пользователя. Этот саморемонт не произошел для пользователей admin.
Когда я изучил MSI с Orca, в таблице «ModuleDependency», этот модуль tabctl32 имел зависимости с COMCAT msm и OLEAUT32 msm, мы также установили их вместе с модулями слияния.
Я не понимаю, почему саморемонт не происходит для пользователей-администраторов, а для стандартных пользователей?
Может ли кто-нибудь объяснить, что здесь происходит?
Вы очень близки. Фактически, средство просмотра событий имеет две записи: Обнаружение продукта ' {A958E33B-5EC8-45C7-B1E0-661D0D7AD318}', функция 'ThisFeature', компонент '{1CD44446-251F-40CC-B158-717060F8A3B6}' не удалась. Ресурс «HKEY_CURRENT_USER (64) \ Software \ Company \ InstalledMyAppShortcuts» не существует. Обнаружение продукта {A958E33B-5EC8-45C7-B1E0-661D0D7AD318} ", функция 'ThisFeature' не удалось во время запроса для компонента" {FC3E0B6A-F62B-11D1-B144-00C04F990B2B} – Petronius
Но клавиша быстрого рег Безразлично существует для любого пользователя, поскольку он специфичен для HKCU. И «{FC3E0B6A-F62B-11D1-B144-00C04F990B2B}» является GUID для Tabctl32.ocx. Если я устанавливаю Tabctl32.ocx как свободный файл вместо модуля слияния, самовосстановление не происходит. Это означает, что я точно знаю, что ярлык не является виновником. – Petronius
Не уверен, что это означает: «клавиша быстрого доступа не существует для какого-либо пользователя, поскольку она является специфичной для HKCU», поскольку установка на установку будет устанавливать ее для пользователя установки, но не для других пользователей.В вашем сообщении недостаточно информации о ключевых файлах/записях реестра или о том, какие компоненты находятся в этой функции, потому что восстанавливается вся содержащая функция, а не только компонент. – PhilDW