基本适应win7,win10,win server 08,win server 12,win server 16的截图

This commit is contained in:
2025-01-03 23:00:47 +08:00
parent 909b89dfce
commit 84362607c2
77 changed files with 69638 additions and 1 deletions

32
grdp/win/win.go Normal file
View File

@@ -0,0 +1,32 @@
package win
import (
"unicode/utf16"
"unsafe"
)
func unicode16FromString(s string) []uint16 {
r := make([]rune, 0)
for _, c := range s {
r = append(r, c)
}
b := utf16.Encode(r)
return append(b, uint16(0))
}
func stringFromUnicode16(s *uint16) string {
if s == nil {
return ""
}
buffer := []uint16{}
ptr := uintptr(unsafe.Pointer(s))
for true {
ch := *(*uint16)(unsafe.Pointer(ptr))
if ch == 0 {
break
}
buffer = append(buffer, ch)
ptr += unsafe.Sizeof(ch)
}
return string(utf16.Decode(buffer))
}