Удалите определенные файлы во время установки, используя проект установки Visual Studio
У меня есть эта проблема. Я создал установщик для своего решения на C#, который будет помещен в папку с другими установочными папками и файлами, которые необходимо скопировать в установленную папку. Так что это просто, я просто копирую их в папку, которую создаю, используя нужную структуру папок, указав свойства в моем проекте установки Visual Studio.
Теперь я также хочу, чтобы при запуске созданного мной файла "setup.exe" определенные файлы из каталога c:/ также удалялись (если они присутствовали) с определенной машины, на которой я запускаю установщик установки.
Я пытался задать аргумент командной строки в PostBuildEvent & PreBuildEvent в окне свойств моего проекта программы установки, но он не работает. Это удаление этих файлов при сборке проекта, а я хочу, чтобы эти файлы были удалены при запуске файла установщика установки (Setup.exe), который создается после сборки проекта.
1 ответ
Вы сможете написать код внутри dll с пользовательским действием, которое может сделать это за вас.
Имейте в виду, что у вас могут быть проблемы с разрешениями, в зависимости от того, какие привилегии имеет учетная запись, запущенная установщиком.
У MSDN есть хороший пример того, как создать dll настраиваемого действия. Похоже, вы можете:
- Передайте путь установки в свою DLL пользовательского действия.
- в
Install
перегрузка, запишите путь в словарь stateSaver - в
Uninstall
перегрузка, чтение пути из словаря stateSaver - Теперь у вас есть путь к папке установки, удалите ее!
(Я предполагаю, что здесь вы хотите избавиться от этих файлов при удалении)