2009-09-06 53 views
0

我有一个程序,这是一个.NET转换器,可以在其他.NET项目中使用。 我有两种许可证:如何防止程序在服务器上使用?

  1. 开发许可桌面软件的WEB服务器部署的软件
  2. 开发许可证。

如果客户购买(1)许可他不能在服务器上使用它,我该如何保护我的程序。

回答

1

如果是桌面软件(我不确定问题与标签),您可以使用Environment对象来检查代码运行在哪个操作系统并停止它在服务器技术上运行。如果他们运行使用XP或类似的服务器,这将无济于事,但这只是一个开始。

+0

而且会让任何在桌面上运行服务器版的人失望,不是吗? – derobert 2009-09-06 11:28:25

+0

是的,但对于软件来说,这是有道理的。免责声明很有趣? :P – 2009-09-06 11:29:50

+0

是的,我不知道客户端使用的是什么操作系统。它可以是XP。另外我不能减少.NET组件的功能,它只有一个文件转换功能。 – Constantine 2009-09-06 11:31:13

2

声明:除了如何拼写,我不知道.Net的任何内容,我对此不完全确定。

看起来,在桌面上使用文件转换器并在Web服务器上使用它的人之间的差异似乎是一次只能在桌面上运行一个实例;一个网页可能会有多个实例,每个并发请求一次。这似乎是您可以在软件中强制执行的事情,也可以轻松写入许可协议。

IIS在Windows上使用图形控制台运行吗?如果它没有,并且你的桌面版本可以,也许你可以检测到?但是,如果有人想要充分利用服务器/桌面的区别,那么他们将会;但是,例如,他们可以让Web服务器将文档发送到桌面计算机,并让桌面将其发送回服务器。所以,在某些时候,你必须放弃并忽略它或说这是合法处理的问题。

相关问题