//本示例 使用到了 加载源码件 的函数
//加载源码件接口的详细说明,我们可以查看下面的帖子
//百宝云支持动态加载源文件啦 http://bbs.baibaoyun.com/thread-345-1-1.html
//在帖子的下方可以下载完全的示例代码: 动态定义加密算法示例_云端代码 + 动态定义加密算法示例_客户端代码

功能 _initial()
    //正常情况下资源目录中的 自定义算法.t 是一份最基本的模板,作者可以自行修改这个模板
    如果(文件是否存在("自定义算法.t") == 0)
        文件拷贝("rc:自定义算法.t", "自定义算法.t")
    结束
结束

功能 _mainbutton(arg)
    sendtextmsg("你好 百宝云")
结束


//当客户端调用 commoninterface 获取对应数据的时候,数据就会被我们封装好的外部接口修改,
//外部接口作者可以随时修改
功能 _commoninterface(token, arg, ip)
    返回 自定义加密(arg)
结束


//已经封装好的直接调用外部源码文件的功能接口
功能 自定义加密(数据)
    变量 错误信息, 返回值, b
    
    变量 h = 加载源文件("自定义算法.t", 错误信息)// 返回句柄
    如果(h == 0)//加载源文件失败,返回原生数据
        文件写日志("loadsourcefile 失败,"&错误信息)
        返回值 = 数据
        返回 返回值
    结束
    
    //这里的调用,其实我们可以理解为类似回调函数
    b = 执行功能(h, "自定义加密接口", 返回值, 数据)// 返回bool值
    如果(!b)//外面自定义数据接口调用失败,返回原生数据
        文件写日志("runfun 失败,"&获取错误信息(1))
        返回值 = 数据
    结束
    
    释放执行句柄(h)
    返回 返回值
结束
