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