【问题标题】:Limit installations to one or two time per day将安装限制为每天一到两次
【发布时间】:2016-10-25 07:46:39
【问题描述】:

我有 Inno Script Create Using IKG (Inno Key generator) 我想将此步骤添加到我的脚本 请帮我。 用户每天只能安装一到两次此设置。

例如:

1.使用互联网获取和查看日期(因为用户可以更改PC日期)

2.将日期保存到注册表和程序文件夹 ({app}) 中的文件(日期限制文件),如 date.txt。复制所有安装文件后,必须创建注册表和日期限制文件。

3.在安装开始前检查每个日期限制(使用注册表和日期限制文件)

i.limit Over : Msg 无法安装

ii.Limit Not over or registry and Limitation File not have : 安装开始

文件:all files link

请帮助我。谢谢

【问题讨论】:

  • 为什么要同时使用注册表和文件?
  • 你尝试了什么?你在哪一步有问题?
  • 因为很难找到两者如果没有用户可以删除文件。
  • 用户可以找到任何东西。依赖存储在本地机器上的信息并不能保证任何事情。您应该将其存储在服务器上。
  • 与其简单地列出一组要求 - 并期望有人为您完成 - 请准确说明您尝试过的内容以及遇到的问题。欲了解更多信息,请阅读stackoverflow.com/help/on-topic

标签: inno-setup


【解决方案1】:

要针对“安装过多”实施您的测试,请实施InitializeSetup event function

当使用ssPostInstall 参数调用时,增加“隐藏”安装计数器的最佳位置是CurStepChanged event function

[Code]

function TooManyInstallations: Boolean;
begin
  { Here you implement your test }
  Result := False;
end;

function InitializeSetup(): Boolean;
begin
  Result := True;

  if TooManyInstallations then
  begin
    MsgBox('You have installed this too many times', mbError, MB_OK);
    Result := False;
  end;
end;

procedure IncrementInstallationCounter;
begin
  { increment your installation counter here }
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
  if CurStep = ssPostInstall then
  begin
    { Installation has beed completed }
    IncrementInstallationCounter;
  end;
end;

【讨论】:

  • 感谢您的帮助但我无法构建它所以如果您有时间请帮助我使用我的脚本。它使用 IKG (Inno) 安装密钥生成器构建。我编辑我的问题它包含所有详细信息
  • 为什么不能构建它?你有什么具体问题?这不是代码编写服务。
猜你喜欢
  • 2012-02-26
  • 1970-01-01
  • 2020-09-24
  • 1970-01-01
  • 2014-09-09
  • 2019-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多