Итак, я сегодня взял Inno, чтобы попытаться получить базовый установщик для игры Unity.Инсталляторная часть Inno работает отлично, к сожалению, деинсталлятор вообще не работает.Я просмотрел документы и просмотрел Google, и почти ничего не видел по этой проблеме.Документы Inno рекомендуют использовать раздел [UninstallDelete], который я пробовал, с похожими результатами.
[Setup]
AppName=Installable Files
AppVersion=1.0
DefaultDirName={pf}\Installable Files
DefaultGroupName=Installable Files
UninstallDisplayIcon={app}\File.exe
Compression=lzma2
UninstallFilesDir={app}\uninst
SolidCompression=yes
[Files]
Source: "File.exe"; DestDir: "{app}"; DestName: "File.exe"
Source: "Files\*"; DestDir: "{app}\Files"; Flags: recursesubdirs
Source: "Files\README.txt"; DestDir: "{app}"; Flags: isreadme
[Icons]
Name: "{group}\Files"; Filename: "{app}\File.exe"; WorkingDir: "{app}"
[UninstallDelete]
Type: filesandordirs; Name: "{pf}\Files"
В выводе из приведенного выше кода говорится, что он удаляет все файлы в подкаталогах, но не удаляетсякаталог с кодом ошибки (145), а затем указывает, что процесс удаления удален успешно.Это то же самое, независимо от того, запускаю ли я деинсталлятор из Inno Setup Compiler, uninst000.exe или из раздела «Установка и удаление программ» в Windows.
Установщик / деинсталлятор, который на самом деле ничего не удаляет, раздражает,так что если есть какое-то понимание этой проблемы, было бы здорово.
(Обратите внимание, что я также пытался удалить отдельные файлы в [UninstallDelete], такие как Type: files; Name: "{app}\LGODemo.exe"
с нулевым успехом)
РЕДАКТИРОВАТЬ: После установки
После удаления
Как показывают изображения, ни один из файлов не удаляется из-за ошибки 145.Затем программа удаления повторяет попытку и, по-видимому, удаляет папки, за исключением того, что они все еще существуют, и файл по-прежнему исполняется на 100%.Я только добавил раздел UninstallDelete, когда исходный файл удаления не удался.
Извините за ссылки в Dropbox, я не могу публиковать imgs, пока у меня не появится лучший представитель.