Inno setup卸載前退出進程、刪除文件夾


[Code]
function InitializeUninstall(): Boolean;
var MainRun: HWND; var MVRun:HWND; begin
// FindWindowByWindowName函數參數為窗口名,即窗口標題,而非進程名。 MainRun :
= FindWindowByWindowName('主窗口'); MVRun := FindWindowByWindowName('Connector'); if (ScreenRun<>0) or (MVRun<>0) then begin if Msgbox('安裝程序檢測到客戶端正在運行。' #13#13 '單擊“是”關閉進程,繼續卸載,或按“否”退出!', mbConfirmation, MB_YESNO) = idNO then begin Result :=false; // 安裝程序退出 end else begin
     // 如果兩個以上的判斷條件,在執行時需要分別再進行判斷
if ScreenRun<>0 then begin PostMessage(MainRun, 18, 0, 0); // 退出主進程 end; if MVRun<>0 then begin PostMessage(MVRun, 18, 0, 0); // 退出Connector進程 end; DelTree(ExpandConstant('{app}'), True, True, True); // 退出進程后刪除安裝位置所有文件夾 Result :=true; // 安裝程序繼續 end; end else begin Result :=true; // 若未檢測到進程,則繼續安裝程序 end; end;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM