【问题标题】:User validation with ClickOnce installer?使用 ClickOnce 安装程序进行用户验证?
【发布时间】:2014-05-30 00:54:45
【问题描述】:

我正在创建一个 WPF Windows 桌面应用程序。 我需要做一些验证,在安装应用程序时,如果验证失败我需要停止安装,否则完成安装。

这可以在 Click Once 中实现吗?

我发现这篇文章:http://msdn.microsoft.com/en-us/library/dd997001.aspx 用于创建自定义安装程序。但它需要创建一个单独的应用程序并使用自定义安装程序类来安装应用程序。 是否可以覆盖默认安装程序?

【问题讨论】:

  • 什么样的验证?
  • 我需要根据他的 Windows 凭据检查用户身份验证。
  • 在应用程序启动时验证凭据会简单得多,如果用户不是有效用户则不允许他们使用应用程序。这通常是事情的完成方式。 (即在我的工作中,我们使用 IBM Process Designer,它仅适用于某些人,但任何人都可以安装,如果他们没有授权,他们将无法使用它)
  • 如果您需要验证“用户是否安装了 .NET 4.0?”之类的内容。或者应用程序运行所需的其他东西,然后您可以在安装程序中执行此操作。
  • 禁止安装 url 而不是在安装中怎么样?关闭匿名身份验证并打开 Windows 身份验证,以便您知道用户是谁,如果不是正确的用户集,则重定向。

标签: c# wpf deployment clickonce


【解决方案1】:

不,您可以使用 ClickOnce 执行类似操作的唯一方法是使用您已经找到的客户安装程序。

我建议在安装时对经过身份验证的用户进行任何类型的验证,因为两个用户可以使用同一台机器,一个允许安装,一个不允许安装。允许安装的用户可以安装,不允许安装的用户可以运行。

当您的应用按照 mclaassen 的建议运行时,对用户进行身份验证会好得多。

【讨论】:

    【解决方案2】:

    作为一种解决方法,您可以将安装分为两个步骤。

    首先为完整的应用程序进行标准安装,让我们调用安装A。

    开发一个从 DB 读取权限的应用程序,如果是有效用户,则运行安装 A,如果不是,则运行卸载。

    为这个新的权限检查器应用程序进行标准安装,并使其在安装后运行这个应用程序。

    【讨论】:

    • 可能是控制台应用程序从命令行检索参数。无需用户交互。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-02
    • 2012-06-25
    • 2013-06-01
    相关资源
    最近更新 更多