-1

我有一个 C# 桌面应用程序,我想通过从 WebView 控件中的 URL 调用网页(注册表单)来使用许可证密钥进行注册。

我可以以查询字符串形式将值(机器 ID)传递给该网页,但是在成功注册后,如何从该网页将许可证密钥和注册 ID 传递回 C# 应用程序?

申请流程如下:

  1. 用户安装桌面应用程序并打开,要求注册
  2. 注册表单托管在网站 url 上,通过在查询字符串中传递机器 ID 在 WebView 控件中打开
  3. 用户填写详细信息和许可证密钥并点击提交
  4. 软件被注册并生成一个注册 id,应该返回给 C# 应用程序,但是怎么做????
4

3 回答 3

2

创建一个应用程序可以与之通信的 Web 服务。

使桌面应用程序请求您网站上的 URL 以获取注册 ID

让用户在应用程序中手动输入网站提供的密钥。

于 2013-10-22T06:13:35.193 回答
1

有几种常见的方法来进行基于 Web 的许可:

  1. 正如 Allan 建议的那样,让您的桌面应用程序直接与网站/api 通信以请求许可证。

  2. 从服务器下载可以加载到应用程序某处的许可文件。

    • 作为一种选择,让您的桌面应用程序注册一个文件扩展名(.myAppLicence例如),以便您的用户可以直接从资源管理器或 Web 浏览器的下载列表中打开文件。
  3. 让网站生成一个用户可以复制和粘贴的许可证代码。当然,这应该安全地交付 - HTTPS、nocache 等。

在这三者中,让应用程序直接连接到许可服务可能是最安全且最难规避的。该应用程序可以生成某种唯一标识计算机的指纹代码,并且该代码可以用作密钥生成的一部分,以确保密钥只能在该计算机上工作。您可以使用指纹作为加密密钥生成的盐

当然,您也可以有一个指纹代码供用户在注册期间复制粘贴到网站中。

于 2013-10-22T07:09:06.290 回答
0

已经解释了不同的选项。您可以采取以下任何一种路线。

  1. 在您的桌面应用程序中编写一个 Web 服务,在注册后接收来自您网站的回调。您可以在初始请求期间将回调 url 传递给网站。

  2. 解析成功完成注册后网站返回的网页。为了便于解析,您可以确保所需的确认码/注册 ID 编码在一些已知的分隔符文本中。

  3. 要求用户将生成的注册 ID 复制并粘贴到应用程序的文本框中。

  4. 注册完成后,请用户继续下一步。单击“下一步”按钮时,向您的网站发送请求并检查给定机器 ID 的注册 ID。

于 2013-10-22T07:21:56.673 回答