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一点不成熟的想法