(Innosetup)产品安装程序运行标志/SP- /SILENT /SUPPRESSMSGBOXES
时,有什么办法让用户input产品的序列号?
您可以创建新的命令行参数并传递序列号。
/ SERIAL = 12345679
如果缺少此参数,则不允许继续(显示错误/正确的用法或简单地终止安装)。
要扩大@ Slappy的答案 :
你可以使用/SERIAL=
命令行参数,但InnoSetup不支持这个作为其标准命令行参数之一 ,所以你必须做一些Pascal脚本。 像下面的东西应该工作。
procedure CheckForCommandLineSerial(); var i: Integer; begin for i := 1 to ParamCount do begin if (Pos('/serial=', Lowercase(ParamStr(i))) = 1) and (Length(ParamStr(i)) > 8) then begin WizardForm.UserInfoSerialEdit.Text := Copy(ParamStr(i), 9, Length(ParamStr(i)) - 8); exit; end end; end;
你可以从你的InitializeWizard
事件函数中调用它。