点评
我们的销售软件的时候,都会发展代理,但是如果想让代理给你好好干,一般都要允许代理修改版权。
下面给大家一套完整的解决方案,希望能帮到大家。
实现方案:
1、软件客户端启动之前,读取oem信息,检测到代理信息后,自动修改软件版权。
2、OEM工具,会把代理自己设置的信息,写入到软件的尾部,生成oem版本。
需要懂的技术原理:
我们易语言生成的exe程序,是一种常见的pe文件,另外还有com、dll等,比如你把自己生成的exe文件,修改扩展名为com,软件还是能正常运行的。
那么,如果我们在我们的exe程序后面,直接拼接一段字节集数据,是否可以运行呢?
答案是肯定的。
具体实现方法-OEM工具开发:
1、把用户的版权信息进行拼接。
比如:品牌名=精易软件,销售网站=hibbba.com,购买地址=hibbba.com/sale.html,联系方式=52281565
然后把这段字符串进行简单的加密,并转换成字节集。
2、读取exe文件,并把这段字节集拼接在后面。注意,为了区分好这段字节集,我们需要在OEM信息的前面,加上一段特殊的字符。
具体实现方法-现有软件改造:
1、我们需要对 C:\客服助手.exe 这个软件代码进行改造,首先要读取版权信息,并且解密。
.版本 2
.子程序 __启动窗口_创建完毕
读取版权信息并显示 ()
.子程序 读取版权信息并显示
.局部变量 临时, 字节集
.局部变量 分割的文本, 文本型
.局部变量 数组, 字节集, , "0"
.局部变量 版权信息, 文本型
临时 = 读入文件 (取运行目录 () + “\” + 取执行文件名 ())
分割的文本 = “fengeshujuzhuanyonghhahahahh”
数组 = 分割字节集 (临时, 到字节集 (分割的文本), )
.如果真 (取数组成员数 () = 3)
版权信息 = 到文本 (数组 [3])
版权信息 = 文本_解密 (版权信息, “hibbba”)
写到文件 (取运行目录 () + “\oe.dll”, 数组 [3]) ' 也可以在首次运行的时候,把版权信息写到本地文件,运行的时候,先判断有没有这个文件,如果有的话,就不在从软件取,而是优先从本地的oe.dll取数据。这样自动更新后,软件还是代理的版权信息。
.如果真结束