Скрипт деинсталляции в NSIS - PullRequest
0 голосов
/ 26 мая 2011

Я новичок в написании программы установки / удаления. Мне нужен деинсталлятор, чтобы удалить файлы, хранящиеся в файле журнала (текстовый файл). Я пытаюсь реализовать функциональность с помощью сценария NSIS, но не смог, хотя и пошел по ссылке ниже: http://nsis.sourceforge.net/Talk:Uninstall_only_installed_files В основном мне нужно реализовать следующие четыре строки кода:

OutFile "dummy.exe" 
Section "Uninstall"
!include "unlist.txt"
!system 'del unlist.txt'
SectionEnd

Оператор include показывает ошибку, так как я добавил имена файлов с неверным форматом в unlist.txt.

Результат компиляции:

OutFile: "dummy.exe"
Section: "Uninstall"
!include: "unlist.txt"
File: "Test1.txt" [compress] 4 bytes
File: "Test2.txt" [compress] 0/4 bytes
File: "Test3.txt" [compress] 0/4 bytes
File: "Test4.txt" [compress] 0/4 bytes
!include: closed: "unlist.txt"
SectionEnd

Обработано 1 файл, запись вывода:

Error: invalid script: no sections specified
Error - aborting creation process

Может кто-нибудь посоветовать мне правильный сценарий или нужно указать правильный формат файла в unlist.txt?

Спасибо за вашу помощь.

С наилучшими пожеланиями, Питер

1 Ответ

2 голосов
/ 30 мая 2011

Ваш установщик должен выглядеть так:

OutFile "dummy.exe"

Section 01
# This is install section
WriteUninstaller "Uninstall.exe"
SectionEnd

Section "Uninstall"
!include "unlist.txt"
!system 'del unlist.txt'
SectionEnd

Должен существовать один раздел установки, и создается простой деинсталлятор (во временном каталоге). Вам нужно указать больше кода для правильной работы: например, установить $ INSTDIR и т. д.

...