代码示例
package main
import (
"syscall"
"time"
"unsafe"
)
func IntPtr(n int) uintptr {
return uintptr(n)
}
func StrPtr(s string) uintptr {
return uintptr(unsafe.Pointer(syscall.StringToUTF16Ptr(s)))
}
func ShowMessage(tittle, text string) {
user32dll, _ := syscall.LoadLibrary("user32.dll")
user32 := syscall.NewLazyDLL("user32.dll")
MessageBoxW := user32.NewProc("MessageBoxW")
MessageBoxW.Call(IntPtr(0), StrPtr(text), StrPtr(tittle), IntPtr(0))
defer syscall.FreeLibrary(user32dll)
}
func main() {
ShowMessage("修改配置失败", "失败原因: 需要管理员配置")
time.Sleep(3 * time.Second)
}
演示: