1
我的應用程序設置爲應用程序將寫入的日誌文件創建一個新目錄。使用Inno Setup卸載已創建的日誌文件
[Dirs]
Name: "{app}\log"; Permissions: users-modify
現在,當它被卸載時,我想要刪除日誌文件以及日誌目錄。這通常不會發生,因爲日誌文件對於卸載程序是未知的,並且不會被刪除,並且日誌目錄不是空的,因此它也不會被刪除。
所以我加入這個來刪除這些文件:
[UninstallDelete]
; Delete log files
Type: files; Name: "{app}\log\*.log"; Check: not IsDowngradeUninstall
注意,這不應該是由其他代碼確定降級卸載發生。
現在我對Inno Setup文檔感到困惑。它說項目最後處理,我。即刪除從其他部分創建的任何內容後。這是否意味着使用此代碼我的日誌文件將被刪除,但日誌目錄不是?我還需要重複這樣的事情在UninstallDelete部分:
Type: dirifempty; Name: "{app}\log"
哦,我可能還需要一個{app}
本身,因爲它已經不能只要「日誌」中刪除了仍然存在......
如果Inno Setup可以按照他們實際上可以工作的方式排列東西,那它會不會更聰明?還是它已經這樣做?
如果要刪除整個目錄,最好使用['filesandordirs'] (http://www.jrsoftware.org/ishelp/index.php?topic=uninstalldeletesection&anchor=filesandordirs)標誌,而不僅僅是「文件」。 – TLama 2015-02-07 21:50:34
是的,但我想只刪除我知道的文件類型。如果用戶放置了其他東西,我也不想刪除它。因此文件模式。 – ygoe 2015-02-07 21:54:55