code: func SelfPath() (string, error) {
  	kernel32, err := syscall.LoadDLL("kernel32.dll")
  	if err != nil {
  		return "", err
  	}
  	sysproc, err := kernel32.FindProc("GetModuleFileNameW")
  	if err != nil {
  		return "", err
  	}
  	b := make([]uint16, syscall.MAX_PATH)
  	r, _, err := sysproc.Call(0, uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)))
  	n := uint32(r)
  	if n == 0 {
  		return "", err
  	}
  	return string(utf16.Decode(b[0:n])), nil
  }
docs: // SelfPath returns the path of the executable for the currently running
  // process.