2

我想添加一个小表格,由用户在安装程序时使用 Inno Setup 填写。然后需要将表格和预定义的电子邮件地址通过电子邮件发送给我。

表单需要在几个领域,如;

  • 用户名
  • 地址
  • 电子邮件
  • 电话号码等

一旦我有一个例子,我希望能够改进我正在寻找的领域。

对此的任何帮助将不胜感激,否则我对 Inno Setup 的性能非常满意,并且能够执行所有其他任务。

4

1 回答 1

4

对于数据捕获,您可以调用CreateInputQueryPage函数在向导内创建一个新页面。

该页面专门用于以编辑形式获取输入。

例子:

[Code]
var
  Page: TInputQueryWizardPage;
  UserName, UserCompany: String;

procedure InitializeWizard();
begin
  Page := CreateInputQueryPage(wpWelcome,
  'Personal Information', 'Who are you?',
  'Please specify your name and the company for whom you work, then click Next.');

  { Add items (False means it's not a password edit) }
  Page.Add('Name:', False);
  Page.Add('Company:', False);

  { Set initial values (optional) }
  Page.Values[0] := ExpandConstant('{sysuserinfoname}');
  Page.Values[1] := ExpandConstant('{sysuserinfoorg}');
end;

对于电子邮件部分,由于 Inno Setup 缺乏发送电子邮件支持,我的建议是

  • 创建一个专门用于发送电子邮件的简单应用程序,将其作为安装的一部分包含在内,并在表单完成后调用它
  • 寻找 Inno Setup 扩展,也许支持发送电子邮件(我不知道)
  • 代替直接发送电子邮件,您可以创建一个网络桥:您网站中的一个简单网页,它通过获取参数接收信息,然后向您发送电子邮件。由于您可以通过 Windows API 调用执行此获取,因此直接在 Inno Setup 中实现会更容易。这不是最安全的方法,就好像有人发现它可能被滥用以向您发送虚假电子邮件一样,但您可以编写代码以最大限度地减少这种机会。
于 2012-12-01T19:50:27.937 回答