我已完成电子邮件编辑框的验证。
我想在安装脚本中检查给定的电子邮件地址是正确还是错误。
我们如何在installscript中实现此功能?
谢谢, Thananjeyan
答案 0 :(得分:1)
我不会在安装过程中进行任何涉及互联网连接的检查。如果您只想避免拼写错误,请添加两个字段并进行比较以确保用户输入正确。
未通过互联网验证的主要原因是您无法假设可以直接连接到互联网。机器可能没有活动的网络连接,或者公司代理服务器不允许直接访问网络等......
其次,我不会要求用户在设置过程中输入任何详细信息,但要求首次启动应用程序。这样可以更好地控制输入过程,具有良好的异常处理功能,允许访问Internet,允许在第一次运行期间出现问题时重复该过程,并且将至关重要为每个用户工作启动应用程序,而不仅仅是安装应用程序的人。异常是一个许可证密钥,适用于机器上所有软件用户 - 您可以要求,但让应用程序验证它(在安装期间,您具有提升的权限并且可以写入HKLM,在应用程序启动期间不是这样)。使它成为公共属性,因此也可以在静默模式下设置。
所以在结论中询问应用程序启动时的电子邮件地址,并使用应用程序自己的代码库在互联网上验证它 - 更加可靠。仅在设置期间(例如共享许可证密钥)请求并添加每台计算机数据(HKLM),以利用安装期间可用的提升权限。在启动应用程序时将所有用户数据写入HKCU或用户配置文件。另一个含义是将所有每用户设置保留在您的设置之外,并通过应用程序设置它们。
尝试以任何理由连接到Internet的设置在企业环境中不受欢迎。这包括尝试自动下载和安装运行时的设置,这些设置可能未被批准在标准机器环境(SOE)上使用。有时,安装程序还要求并尝试验证许可证和电子邮件地址,并下载对话框的活动内容。这些都不是安全的,可取的或有助于使您的软件获得公司使用批准。 几乎所有企业环境都要求以静默方式部署软件,然后必须禁用所有这些在线验证功能,否则安装可能会完全失败,因为出于安全原因,系统帐户被特别阻止访问Internet。 /强>
您的设置需要访问Internet是一个巨大的设计缺陷 - 特别是当它以静默模式运行时。 我之前在这个问题上写过这个答案:{{ 3}}
仅供家庭使用的安装人员 - 通常是游戏 - 不同。您可以访问互联网以实现这些安装" auto-magic",通常您应安装所有游戏尽可能少的问题 - 用户通常对您提出的任何问题都不了解或不感兴趣。市场营销可能会想要电子邮件。