điều này tương tự Elektrostudios' câu trả lời, và là những gì làm việc cho tôi:
Filename: {cmd}; Parameters: "/C Mkdir ""{app}\Uninstallers\{#MyAppName}"""; Flags: RunHidden WaitUntilTerminated
Filename: {cmd}; Parameters: "/C Move ""{app}\unins000.exe"" ""{app}\Uninstallers\{#MyAppName} - uninstall.exe"""; StatusMsg: Installing {#MyAppName}...; Flags: RunHidden WaitUntilTerminated
Filename: {cmd}; Parameters: "/C Move ""{app}\unins000.dat"" ""{app}\Uninstallers\{#MyAppName} - uninstall.dat"""; StatusMsg: Installing {#MyAppName}...; Flags: RunHidden WaitUntilTerminated
Filename: {cmd}; Parameters: "/C Move ""{app}\unins000.msg"" ""{app}\Uninstallers\{#MyAppName} - uninstall.msg"""; StatusMsg: Installing {#MyAppName}...; Flags: RunHidden WaitUntilTerminated
Filename: REG.exe; Parameters: "ADD ""HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Windows 8 ContextMenu - {#MyAppName}_is1"" /V ""UninstallString"" /T ""REG_SZ"" /D ""\""{app}\Uninstallers\{#MyAppName} - uninstall.exe\"""" /F"; StatusMsg: Installing {#MyAppName}...; Flags: RunHidden WaitUntilTerminated
Filename: REG.exe; Parameters: "ADD ""HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Windows 8 ContextMenu - {#MyAppName}_is1"" /V ""QuietUninstallString"" /T ""REG_SZ"" /D ""\""{app}\Uninstallers\{#MyAppName} - uninstall.exe\"" /SILENT"" /F"; StatusMsg: Installing {#MyAppName}...; Flags: RunHidden WaitUntilTerminated
Sử dụng Windows 7, tôi phát hiện ra rằng 'di chuyển' lệnh sẽ không làm việc trừ khi tôi có nơi nào đó để di chuyển các tập tin đến đầu tiên, ý nghĩa tôi phải thêm dòng mkdir ở trên cùng. Ngoài ra, trình gỡ cài đặt sẽ không hoạt động nếu không có tệp .msg được di chuyển, vì vậy tôi đã theo dõi mẫu và thêm dòng đó.
Tôi không bận tâm thay đổi "Windows 8" thành "Windows 7" nhưng nó không tạo ra bất kỳ sự khác biệt nào, vì vậy tôi sẽ để nó một mình. Nếu có một vấn đề mà tôi không biết, tôi chắc chắn ai đó sẽ chỉ ra như vậy trong một bình luận.
{#MyAppName} là, tất nhiên, hằng số được xác định ở đầu tệp ISS khai báo tên của ứng dụng. Hằng số của bạn có thể được xác định khác nhau, vì vậy bạn sẽ cần thay đổi nó để khớp với những nơi cần thiết.
Nguồn
2014-01-05 22:23:48
Không thể. Và bạn nên tránh sử dụng các hacks từ các câu trả lời dưới đây. Đổi tên các tập tin cài đặt sẽ phá vỡ nâng cấp. Xem http://www.jrsoftware.org/ishelp/index.php?topic=appendnotes –