InstallShield: удаление установленных файлов при удалении - PullRequest
1 голос
/ 14 января 2009

При установке я копирую некоторые файлы в папку «System32». При удалении эти файлы не удаляются. Почему?

Ответы [ 4 ]

5 голосов
/ 14 января 2009

Установки MSI должны быть декларативными, а не процедурными. Вы объявляете, какие файлы должны быть скопированы, и они копируются установщиком Windows. При удалении установщик Windows знает, какие файлы удалять, потому что он, потому что он установил их в первую очередь.

С другой стороны, если вы делаете что-то ручное во время установки, например, копируете файлы самостоятельно, установщик Windows не знает об этом, и вы обязаны удалить их при удалении.

2 голосов
/ 14 января 2009

Может ли быть так, что компонент, к которому принадлежит файл, является постоянным ? Также обратите внимание, что вам следует избегать установки файлов в System32, если это не требуется.

0 голосов
/ 14 января 2009

Это сценарий установки или установки на основе MSI? Если MSI, может быть, подробный журнал даст больше понимания? Также (вы, вероятно, проверили), но убедитесь, что эти файлы не помечены как постоянные.

Кроме того, это динамически связанный файл или статический? У меня иногда возникают проблемы с динамикой из-за отсутствия ключевых файлов в установщиках на основе MSI. Вы можете попытаться сделать файлы статически связанными.

0 голосов
/ 14 января 2009

Как файлы попали в эту папку - вручную? если они не будут удалены, см. http://kb.acresso.com/selfservice/viewContent.do?externalID=Q100225 <Ч />
Я использую InstallScript, и существует определенная функция, которая будет выполнять откат при удалении: Функции InstallScript, которые зарегистрированы для удаления - там упоминается, что это применимо также к проектам InstallScript или MSScript от InstallScript.

...