我必须分发一个setup.exe使用innoSetup,其中每个用户和每个PC必须获得许可。
我想给他们一个像Windows 8.1的许可证密钥/产品密钥,他们必须inputInnoSetup。 并与embedded的常量匹配或通过互联网直播。 一旦validation完成,那么setup.exe将完成,否则不会安装。
有没有这样的innosetup样本,我该怎么做,请吗?
要创建输入序列号的页面,您可以启用UserInfoPage
指令并为CheckSerial
事件编写处理程序:
#define SerialNumber "123456" [Setup] AppName=My Program AppVersion=1.5 UserInfoPage=yes DefaultDirName={pf}\My Program [Code] function CheckSerial(Serial: String): Boolean; begin Result := Serial = '{#SerialNumber}'; end;
无效序列号:
有效的序列号:
我使用了一个预处理器定义的常量,因为这样可以简化构建过程。 然后,您可以从脚本外部定义这样的常量,使用extended command line compiler
,例如使用批处理脚本来构建具有定义的序列号的设置。
您只需从上面的脚本中删除第一行(硬编码) ,然后运行命令行(对于序列号654321
):
iscc "/dSerialNumber=654321" "C:\Script.iss"
当然,实际上你需要关心输出设置文件的管理和他们的序列号,但你选择的系统在你身上。 Command line compiler
允许你指定输出路径和一个足够建立这样的系统的文件名。