·怎麼給在開始菜單中增長卸載快捷方式?緩存
在相應節點下,添加如下代碼安全
[Setup] Uninstallable=yes UninstallDisplayName=卸載快捷方式的名字 [Icon] Name: "{group}\卸載快捷方式的名字"; Filename: "{uninstallexe}"
**·怎麼自定義卸載圖標? **函數
(例中卸載圖標名字爲:uninstallico.ico)工具
下載一個UpdateIcon.dll放在同一個文件夾下 (JAR、腳本、圖標、這個DLL等相關文件都放同一文件夾下)ui
[Files] ;卸載圖標位置 Source: "D:\xx\uninstallico.ico"; Flags: solidbreak dontcopy ;卸載插件位置 Source: "D:\xxx\UpdateIcon.dll"; Flags: solidbreak dontcopy [code] //插件函數用法 //參數: 句柄(插件錯誤對話框的父句柄), exe文件完整路徑名稱, (exe文件中要替換的)圖標資源名稱, 圖標文件的完整路徑名稱, (exe中要替換的圖標資源所在)語系 //返回值: 成功 = True, 失敗 = False function UpdateIcon(const hWnd: Integer; const exeFileName, exeIcon, IcoFileName: String; wlangID: DWORD): Boolean; external 'UpdateIcon@files:UpdateIcon.dll stdcall'; //替換卸載程序的圖標 function UpdateUninstIcon(const IcoFileName: String): Boolean; begin // 要替換圖標的exe文件路徑名稱留空,則插件會自動替換掉Inno卸載程序的圖標!其它參數相似! Result:= UpdateIcon(MainForm.Handle, '', '', IcoFileName, 0); //替換卸載圖標 end; procedure CurStepChanged(CurStep: TSetupStep); var sIcon: String; begin //注意: 替換卸載程序的圖標,必須是在卸載程序生成以前! //建議安裝圖標與卸載圖標的格式與大小一致,不然可能會致使卸載程序出錯! if CurStep=ssInstall then begin sIcon:= ExpandConstant('{tmp}\uninstallico.ico'); //定義卸載圖標 // ExtractTemporaryFile('UpdateIcon.dll'); ExtractTemporaryFile(ExtractFileName(sIcon)); //釋放卸載圖標 // 要替換圖標的exe文件路徑名稱留空,則插件會自動替換掉Inno卸載程序的圖標! if UpdateUninstIcon(sIcon) then //替換卸載圖標 // MsgBox('卸載程序圖標 替換成功!', mbInformation, MB_OK) // else MsgBox('卸載程序圖標 替換失敗!', mbError, MB_OK); end; end;
完了以後,若是你發現圖標仍是沒變,這多是WINDOWS緩存的問題,你把卸載文件放到別的文件夾下看看,若是圖標變了的話,那就說明替換成功。由於這個BUG,沒少浪費我時間……插件
·怎麼讓程序在啓動的時候自動請求管理員權限呢?code
使用ResHacker工具修改文件信息 用工具打開你要請求管理員的exe文件,使用搜索功能,查找「requestedExecutionLevel」orm
把asInvoker 改爲requireAdministrator,以後點擊編譯腳本便可。 從新打開這個exe文件,若是你發現剛纔的值變成了requireAdministrator的話,那就說明更改爲功。圖片
若是這時候,運行程序仍是會提示權限不足,或者沒有任何反應的話,就是不提示請求權限的話。ip
那麼這極可能是電腦本地安全策略的設置問題。 在開始欄搜索 本地安全策略,打開它(家庭版的系統好像沒有這個功能) 選擇本地策略-安全選項,將用戶帳戶控制那幾個選項,改得和我同樣,重啓後再試試。 通常在這樣修改以後,程序就能自動請求權限。
再補充一些技巧:
**怎麼取消安裝後的運行選項? **
(刪除腳本中的[run]代碼塊便可)
怎麼默認勾選建立桌面圖標
刪除 桌面圖標代碼後的 flags便可
[Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"