使用 Inno Setup 将凭据保存到 Windows 凭据管理器

Save credentials to Windows Credentials Manager using Inno Setup

我们希望使用 Inno Setup 在 Windows 凭据管理器中存储我们应用程序的客户特定凭据。

我们正在构建一个安装程序,用于在客户环境中安装我们软件的一部分。我们希望安装程序要求提供客户端 ID 和客户端密码。然后我们希望在安装过程中将此凭据存储在 Windows 凭据管理器中。我们怎样才能做到这一点?

我已经看到了那些可能有趣的问题,但我不了解如何在 Inno Setup 中使用它:

Windows 使用这些凭据的服务将 运行 使用运行安装程序的同一帐户。

我相信您可以简单地从 Inno Setup 运行 cmdkey 提供用户指定的凭据(例如在自定义页面上):

[Run]
Filename: {sys}\cmdkey.exe; \
    Parameters: "/add:target /user:""{code:GetCred|0}"" /pass:""{code:GetCred|1}"""
[Code]
var
  Page: TInputDirWizardPage;

function GetCred(Param: string): string;
begin
  Result := Page.Values[StrToInt(Param)];
end;

您当然需要先使用 CreateInputQueryPage 创建 Page

类似问题: