Проект развертывания Visual Studio - CustomActionData - PullRequest
1 голос
/ 15 июля 2010

Я использую функцию DLL C ++ в качестве пользовательского действия в проекте развертывания VS. Мне нужно установить некоторые входные данные для этого пользовательского действия. Пример: c: \ a.dll; c: \ b.dll

Кажется, я не могу этого сделать. MsiGetProperty не возвращает ничего (или терпит неудачу) внутри функции настраиваемого действия. Если у меня есть данные настраиваемого действия как: "abcd", то MsiGetProperty получает данные правильно.

Как отправить данные по мере необходимости. Пожалуйста, помогите.

Спасибо, Хильми.

1 Ответ

1 голос
/ 15 июля 2010

Запланировано ли пользовательское действие как отложенное?Отложенные настраиваемые действия не будут иметь доступа ни к одной из таблиц MSI и только к нескольким свойствам MSI.

Эта статья делает достойную работу, объясняя, как вызывать отложенное настраиваемое действие и передавать данные вЭто.Хотя в нем нет подробных сведений о том, как это сделать с проектом развертывания VS.

Кроме того, вы можете рассмотреть возможность использования WIX вместо проекта развертывания VS для создания пакетов MSI.Кривая обучения выше, но у вас гораздо больше контроля над сгенерированным msi.

...