innosetup區分正常狀態和靜默安裝狀態(通過傳遞的參數)


   命令行運行程序,如:

   myprogram.exe  /abc  /bcd

   如果我們想獲取其中的參數,“/abc”、“/bcd

1. 直接使用innosetup自帶的方法, GetCmdTail()

       將所有參數作為一個字符串返回,安裝和卸載都適用

       注意:如果打算使用此方法,建議先看一下它返回字符串的格式,如上例子,

               返回的可不僅僅是:/abc  /bcd

2.使用innosetup自帶的ParamCount() 和ParamStr()

       2.1. ParamCount(), 獲取參數的個數

       2.2. ParamStr(), 根據參數下標,返回一個參數

        例子: test.exe  /name abc /age 18

 1 {根據參數名,返回參數值}
 2 function GetMyParam(PName:String):String;
 3 var
 4   CmdLine : String;
 5   CmdLineLen : Integer;//參數的個數
 6   i : Integer;
 7 begin
 8     CmdLineLen:=ParamCount();
 9     for i:=0 to CmdLineLen do
10     begin
11     CmdLine:=ParamStr(i);
12     if CmdLine= PName then
13       begin
14           CmdLine:=ParamStr(i+1);
15           Result := CmdLine;
16           Exit;
17       end;
18     end;
19 
20 end;
View Code

      GetMyParam('name') 結果是:abc

 

總結:因為innosetup進行靜默安裝,需要在程序后面傳參數,所以可以通過獲取參數來判斷是否進行靜默安裝

        innosetup靜默安裝的參數請參考:http://www.cnblogs.com/tommy-huang/p/4580424.html


免責聲明!

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



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