C# 单用户许可证检查

C# 单用户许可证检查,c#,visual-studio,licensing,copy-protection,C#,Visual Studio,Licensing,Copy Protection,假设您有一个数据库表,其中包含: 序列号 机器名 域名/用户名 IP地址 日期和时间 每次客户使用(只能添加或更新)您制造和销售的软件时。如何防止多个用户同时使用它 谢谢 编辑:我忘了提到我所说的桌面应用程序,例如。我担心,在它当前的形式下,这个问题太广泛了。我们需要更多关于您具体案例的具体信息,以便能够提供足够狭窄的答案。例如,您的应用程序“正在使用”或“已使用”是什么意思?它是一个webapi,每个请求花费的时间最少吗?它是一个桌面应用程序,您打开一个应用程序并让它长时间处于打开状态吗?

假设您有一个数据库表,其中包含:

  • 序列号
  • 机器名
  • 域名/用户名
  • IP地址
  • 日期和时间
每次客户使用(只能添加或更新)您制造和销售的软件时。如何防止多个用户同时使用它

谢谢


编辑:我忘了提到我所说的桌面应用程序,例如。

我担心,在它当前的形式下,这个问题太广泛了。我们需要更多关于您具体案例的具体信息,以便能够提供足够狭窄的答案。例如,您的应用程序“正在使用”或“已使用”是什么意思?它是一个webapi,每个请求花费的时间最少吗?它是一个桌面应用程序,您打开一个应用程序并让它长时间处于打开状态吗?它是一个web应用程序,当应用程序打开时,您会发出请求,直到浏览器选项卡关闭后才会再次发出请求吗?至于“它会工作吗?”,您尝试过吗?你测试过了吗?我敢肯定,即使这里有人说“是的,看起来应该行”,实际情况可能会有所不同。据我们所知,有人可以通过云服务器进行连接,而云服务器有时会改变IP,那么您是否也要弹出许可证?还有,这是否意味着如果我有一台固定的电脑和一台笔记本电脑,我就不能在这两台电脑上运行相同的许可证?即使我还是一个用户?基本上,这个问题太宽泛了,因为回答它的唯一方法就是先问一堆问题,得到澄清,然后缩小到你的特定用例。以目前的形式,它涵盖了太多可能的场景,对任何人都没有用处,尤其是对你们。太广泛了?我们想要的是将使用限制为一个并发用户。我提供了我们在每次应用程序执行时收集的所有数据。还缺少什么?好的,如果用户A启动应用程序,然后用户B启动应用程序,会发生什么?谁应该拥有弹出窗口?如果是用户A,用户B是否必须等到A发布许可证,从而有效地关闭该端的程序?如果是用户B,那么用户A现在会怎么样,程序会被终止吗?