123456789101112131415161718192021222324252627282930 |
- package test
- import (
- "Yunlot/logs"
- "plugin"
- "testing"
- )
- func TestNameplugin(t *testing.T) {
- // 根据库的存放路径加载库
- p, err := plugin.Open("/var/lib/docker/volumes/yunlotso/_data/1698289330654.so")
- if err != nil {
- println(err)
- logs.PrintlnError("打开 SO 失败:", err)
- }
- // 查找库导出信息
- s, err := p.Lookup("T")
- if err != nil {
- println(err)
- panic(any(err))
- }
- // 类型转换
- f := s.(func(t string, b []byte) string)("aaaaaaa", []byte("1234567"))
- // 开始处理
- // 开始处理
- logs.Println("协议后:", f)
- logs.Println("首字符:", string("123"[0]))
- }
|