github.com/creativeprojects/go-selfupdate@v1.2.0/update/hide_windows.go (about) 1 package update 2 3 import ( 4 "syscall" 5 "unsafe" 6 ) 7 8 func hideFile(path string) error { 9 kernel32 := syscall.NewLazyDLL("kernel32.dll") 10 setFileAttributes := kernel32.NewProc("SetFileAttributesW") 11 12 r1, _, err := setFileAttributes.Call(uintptr(unsafe.Pointer(syscall.StringToUTF16Ptr(path))), 2) 13 14 if r1 == 0 { 15 return err 16 } else { 17 return nil 18 } 19 }