给软件设置有(yǒu)效期限和次(cì)数的好工具下(xià)载(zǎi),给软件(jiàn)设置有效期限和次(cì)数的好工(gōng)具 好用,不用写代(dài)码(mǎ),到(dào)了日期软件或次数就不能用。
(1) 试(shì)用(yòng)版软件
在(zài)Lock Setting面板中,
Expiration Days 过期天数,可设定(dìng)程(chéng)序(xù)从安装后运行某(mǒu)天数后试用(yòng)版(bǎn)过期。
Expiration Date 过期时间,可设定程序从安装后运行到某(mǒu)时间后试用(yòng)版(bǎn)过期。
Executions 运行(háng)次(cì)数,可设定(dìng)程序从安装后运行(háng)到第几次启试(shì)用版过期(qī)
Runtime 运时时间,可设定程序从安装后运行时间(jiān)后试用版(bǎn)过期(qī)
Global Time 全局时间,可设(shè)定程序(xù)从安装后总的运行时间后试(shì)用版过期
Instances 程序运(yùn)行实例(lì)个数
Custom 自定义
Advanced Settings 高级设置(zhì)
Run Without Valid License 必选中(zhōng)
Shutdown Process After Expiration 重启(qǐ)程(chéng)序后过期(qī)
Search In Embedded Resources 在(zài)资源文件中查找License
Search ON Hdd 在硬盘(pán)中查(chá)找License
License Name 设定程序由(yóu)试用版(bǎn)转(zhuǎn)正版所使用(yòng)的(de)License文件名称。
Master Key license的KEY文件,发布的程序的MasterKey和License的(de)masterKey必须对应,否则License授权失效!
-------------------------------------------
经(jīng)过以(yǐ)上的设置你发布出去的程序就会按你的过期设置(zhì)到时过(guò)期了。
但是这样有一(yī)个弊病,可(kě)以一个授权文件(License),复制(zhì)到任意PC上后即完成了(le)授(shòu)权(quán)。
这里IntelLilock支持license绑定硬件ID进(jìn)行授(shòu)权
(2) License绑定硬件ID进行一机一License授(shòu)权。
流程是这样(yàng)的。程序发给用户(按(àn)上一步(bù)的设置),满足(zú)过期条(tiáo)件(jiàn)后试用(yòng)过期,
让用户去程序文件夹(jiá)寻(xún)找(zhǎo)(硬(yìng)件ID.txt) 里面放着当前(qián)电脑的硬件(jiàn)ID信息
此硬件(jiàn)ID信息从哪来的呢,这(zhè)里(lǐ)IntelLiLock Sdk 提供的方法
项目引用IntelliLock.Licensing.dll 在IntelLiLock安(ān)装后(hòu)的文件夹(jiá)\SDK\Bin下(xià)
调用此方(fāng)法读取当前PC的硬件ID信息
?
1 IntelliLock.Licensing.HardwareID.GetHardwareID(true, true, true, true, true,false);<br><br>
参数 Bioses,CPU,HDD,MAC,Mainboard,OS 为True即(jí)生成硬件信息(xī)ID时(shí)加入此硬件的(de)算(suàn)法
这里你调用此方法(fǎ)调试程序(xù)时(shí)显(xiǎn)示"####-#####-#####-####"类似(sì)字符串,不是(shì)硬件ID信息。
因(yīn)为程序(xù)需要使(shǐ)用(yòng)IntelLilock加密后(hòu)。此方(fāng)法才生效(应该是(shì)IntelLilock加密时动态的把此方法的算法加了进去)
用IntelLilock加密(mì)后运行程序。成功显示了硬件ID信息
下面是用(yòng)IntelLiLock发布授权License
把(bǎ)用户发来的(de)硬件ID粘贴入上面文(wén)档框中,把(bǎ)Bioses,CPU,HDD,MAC,Mainboard复(fù)选框选中
这(zhè)里为什么不(bú)把OS也选中呢。因为
1 IntelliLock.Licensing.HardwareID.GetHardwareID(true, true, true, true, true,false);
此方法的(de)最后(hòu)一个OS参数为(wéi)false,所以这里不用(yòng)选(xuǎn)中。要和上面方法(fǎ)保持一致! 这样把(bǎ)你(nǐ)的license发给用户。放(fàng)到程序根(gēn)目录下。即完成了(le)试用版到正式版的授权。 以上这些只是IntelLiLock的Task标签内的内容 还有(yǒu)License 管(guǎn)理,TOOLS工具,help等 License management 针(zhēn)对(duì)客户,产(chǎn)品进行信息维(wéi)护,自带SQLITE数据库 tools工具(jù)中有License Check 和hardware check
IntelliLock.Licensing.evalsuationMonitor.CurrentLicense.LicenseStatus == IntelliLock.Licensing.LicenseStatus.Licensed 判(pàn)断(duàn)当前(qián)License是否已授权
就写这些了(le)。。。还有更多的功能等待你的(de)挖掘!
打开Intellilock进处(chù)此界面
点击add按钮(niǔ)加入你要操(cāo)作的程序集(jí),
Merge Assemblie 可以合并当前程序集列表中的(de)程序集为一(yī)个文件。默认(rèn)合成后的文件名(míng)为列表中第一位的程序集。
点击Protection Settings标签进入保护设置界面
左(zuǒ)侧是混淆界面,右侧是高级(jí)选项
Use Unprintable Characters 使用不可打印字符
Generate Short Strings 使用短字符串,可以减小程序集大小
Incremental Obfuscation 增量混(hún)淆处(chù)理(lǐ)
Create Mapping File 创建混(hún)淆映身(shēn)文(wén)件。选中此选项(xiàng)会(huì)产生一个limap文件
Exclusions 排除以(yǐ)下程序关键(jiàn)字或类型不混淆
枚举,事件,命(mìng)名空间,类型,字(zì)段(duàn),方法
String
Advanced 高(gāo)级
String Encryptio 加密字(zì)符串(chuàn)
Advanced String Encryption
Code Path Protection 代(dài)码补丁保护
Suppress ILDASM 禁用ILDASM反汇编
String Name Removal Protection 禁止移除强(qiáng)命(mìng)名保护
Encrypt Il Code 加密IL代码,选中(zhōng)此(cǐ)选项IL代码将在运行时进行解密(mì)
Inject Invalid Metadata 注入无效元(yuán)数据
Control Flow Obfusction 控制流程混淆级别,越高越安全。
以上选项设定后,点(diǎn)击工具栏的Finalize或点击(jī)TAB标签Finalization,点(diǎn)击GO按钮生成加密后的(de)程(chéng)序
应用平台:WinXP, Win7, Win8, Win10, WinAll
