首页 > 学院 > 开发设计 > 正文

WisDom.Net 框架设计(六) license

2019-11-17 01:32:37
字体:
来源:转载
供稿:网友
WisDom.Net 框架设计(六) license

WisDom.Net-license

1.为啥要用license

license (许可证) 顾名思义就是说我的软件只能给在指定的机器上使用。毕竟很多项目都不是免费的,(说句题外话,其实我用的也是盗版,哈哈)这里我们的 license 分为2种 1,试用版本 显示使用人数 和期限只能有使用30天, 2,正式版本限制合同中规定的天数,下面我们来看一下,WisDom.Net中license是怎么实现的。

2. Do.NET 中的license

在System.ComponentModel命名空间中有以下几个类

1.License 为所有许可证提供 abstract 基类,而许可证将授予组件的特定实例。

2.LicenseContext 指定何时可使用授权的对象,并且提供一种方法,用以获取为支持在其域内运行的许可证所需要的附加服务。

3.LicenseException 表示当组件不能被授予许可证时引发的异常

3. WisDom.Net中的license

1.定义WisDomNetLicense 类,这里采用AES加密之后存入License.src 文件中。完成发证流程。如果要限定MAC地址,只需要在上面加上Mac地址的相关信息就可以限定软件只能在某台服务器上运行了。

 public class WisDomNetLicense    {        /// <summary>        /// 许可证类型        /// </summary>        public  LicenseType  type{get;set;}        /// <summary>        /// 发证日期        /// </summary>        public DateTime StartTime { get; set; }        /// <summary>        /// 结束日期        /// </summary>        public DateTime EndTime { get; set; }        /// <summary>        /// 有效天数        /// </summary>        public int days { get; set; }    }    public enum LicenseType    {       Temporary,       Longterm    }

2.校验License

在wisdom.net中我们让用户导入License其实说白了,就是讲上面的License.src文件上传到某个目录中, 之后我们在页面基类中增加以下校验过程即可如下图:

(图一)

以上就是我关于License一点不成熟的想法


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表