.so
   

在Windows上,我会执行以下操作:

h, e = syscall.LoadLibrary("name.dll") 
    if e != nil {
        log.Fatal(e)
    }
    defer syscall.FreeLibrary(h)

    .所以
   
proc, e := syscall.GetProcAddress(h, processName) //One of the functions in the DLL
if e != nil {
    log.Fatal("errror:", e, processName)
}
pid, _, _ := syscall.Syscall6(uintptr(proc), uintptr(paramSize), a1, a2, a3, 0, 0, 0) //handler, countParam, param, 0 // zawiera jakiegoś print "Hello World" - value
fmt.Println(processName, pid)

我想得到函数(进程)地址并用它来调用syscall.Syscall6。

使用CGo是有答案的,但它并不完整,也没有解释如何使这个函数无效并将param传递给它。