Я установил MSI в Installshield и хочу скопировать несколько файлов из одного места в другое в процессе установки. Поскольку файлы, которые я хочу скопировать на целевой компьютер, являются файлами, устанавливаемыми MSI, я использовал таблицу DuplicateFile.

Целью MSI является резервное копирование и обновление некоторых EXE-файлов на нескольких целевых машинах.

Я добавил 3 записи в таблицу DuplicateFile, все так же, как показано ниже:

KeyFile : DUPSTMMFILE
Component: STMM (reference to component in the project)
File: xxx (reference to file in the project, under the selected component)
DestName: stmedia.q9644
DestFolder: BACKUPS

Для папки назначения (BACKUPS) я создал новую запись в таблице каталогов:

Directory : BACKUPS
Directory_Parent: INSTALLDIR
DefaultDir : BACKUPS
IsAttributes: 0

Когда я строю спину, у меня нет ошибок.

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

Когда я регистрирую вывод, DuplicateFiles появляется даже не для того, чтобы распознать, что есть записи для обработки.

Какие шаги я мог пропустить?

MSI (s) (C0:90) [17:20:15:078]: Doing action: DuplicateFiles
Action 17:20:15: DuplicateFiles. Creating duplicate files
Action start 17:20:15: DuplicateFiles.
DuplicateFiles: File: Creating duplicate files,  Directory: ,  Size: 
Action ended 17:20:15: DuplicateFiles. Return value 1.
MSI (s) (C0:90) [17:20:15:078]: Doing action: BindImage
Action 17:20:15: BindImage. Binding executables
Action start 17:20:15: BindImage.
Action ended 17:20:15: BindImage. Return value 1.

1 ответ1

0

Я бы прокомментировал, но у меня пока нет очков.

Когда вы упомянули файл: xxx (ссылка на файл в проекте под выбранным компонентом) - вы использовали имя файла или ключ файла для этого файла из таблицы файлов?

Сколько еще раз я могу сказать файл ....

Документы говорят, чтобы использовать файл-ключ.

http://msdn.microsoft.com/en-us/library/windows/desktop/aa368335(v=vs.85).aspx

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .