github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/mattn/go-isatty/isatty_windows.go (about) 1 // +build windows 2 // +build !appengine 3 4 package isatty 5 6 import ( 7 "syscall" 8 "unsafe" 9 ) 10 11 var kernel32 = syscall.NewLazyDLL("kernel32.dll") 12 var procGetConsoleMode = kernel32.NewProc("GetConsoleMode") 13 14 // IsTerminal return true if the file descriptor is terminal. 15 func IsTerminal(fd uintptr) bool { 16 var st uint32 17 r, _, e := syscall.Syscall(procGetConsoleMode.Addr(), 2, fd, uintptr(unsafe.Pointer(&st)), 0) 18 return r != 0 && e == 0 19 }