天天看點

windows下go調用記憶體dll

有時候我們希望将dll嵌入到程式内部,以提高程式的安全性,這裡我寫的一個開源memorydll子產品。

首先 go get github.com/nkbai/go-memorydll

然後在需要的時候 import "go-memorydll"即可,

使用起來也非常簡單,這裡從test例子中摘取.

testdll,_:=base64.StdEncoding.DecodeString(testdllbase64)

dll,err:=

memorydll.NewDLL(testdll,"example.dll");

if err!=nil{

t.Error(err)

return

}

proc,err:=dll.FindProc("gcd")

result,_,_:=proc.Call(uintptr(4),uintptr(8))

//fmt.Println("rsult=",result)

if int(result)!=4{

t.Error("gcd calc error")

注意的是,結束的時候記得release相關子產品

繼續閱讀