MSI устанавливается при использовании в командной строке, но не при нажатии

У меня есть установщик MSI для моего приложения WPF. Обычно он собирается и развертывается через конвейер AzureDevops, но с 8 апреля происходит сбой. Думаю, важно отметить: не было внесено никаких изменений в коде, которые могли бы повлиять на программу установки.

Как только я нажимаю на установщик (и предоставляю ему права администратора, как только он спросит) и пытаюсь установить приложение - это не удается:

Вот что я уловил из событий Windows:

Есть журнал, который я получил из обновления приложения, которое также не удалось:

MSI (s) (44:74) [04:16:25:443]: Created Custom Action Server with PID 59164 (0xE71C).
MSI (s) (44:60) [04:16:25:949]: Running as a service.
MSI (s) (44:60) [04:16:25:952]: Hello, I'm your 32bit Impersonated custom action server.
Action start 4:16:25: LoadConfig.
SFXCA: Failed to create temp directory. Error code 5
CustomAction LoadConfig returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
Action ended 4:16:26: LoadConfig. Return value 3.
Action ended 4:16:26: INSTALL. Return value 3.

Однако если я запускаю установщик через командную строку - он работает! Я использовал эту команду:

msiexec /i MyApplication.msi /l*v MyLogFile.txt

P.S. Это происходит с установщиками, созданными конвейером AzureDevops. Если собрать локально - работает как обычно.

Есть ли у кого-нибудь идеи, почему это может произойти и как заставить его снова работать? Заранее спасибо!

Это похоже на подсказку — SFXCA: Failed to create temp directory. Error code 5 — см. github.com/wixtoolset/issues/issues/8078

stuartd 10.04.2024 14:10
Стюарт да, кажется так
Dzmitry Shauchuk 11.04.2024 12:07
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
5
2
368
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Проблема была в изменениях, внесенных в WiX: https://github.com/wixtoolset/issues/issues/8078. В ожидании исправления мы решили обходной путь, понизив версию в конвейере:

choco install wixtoolset --version 3.14 --allow-downgrade --force -y

Это ужасный совет. Вы будете уязвимы для известных проблем безопасности. Не делай это.

Rob Mensching 12.04.2024 14:23

Спасибо за ваш ответ. На самом деле это всего лишь обходной путь, позволяющий как можно быстрее запустить производство. Но к этому моменту мы обновили проект Custom Action для использования nupkg v5, и он работает.

Dzmitry Shauchuk 12.04.2024 15:11
Ответ принят как подходящий

НЕ понижайте версию WiX. Вы будете уязвимы для известных проблем безопасности. Вместо этого обновите проект специальных действий, чтобы использовать файл v5 nupkg. Это должна быть быстрая замена, не имеющая известных уязвимостей безопасности.

Другие вопросы по теме