util/winutil: add little Windows utility package

Code from Alex Brainman, split out of another change. I changed it to
a comma-ok return and tweaked the docs a bit.
pull/1411/head
Brad Fitzpatrick 3 years ago
parent fec9dcbda1
commit e98cdbb8b6

@ -0,0 +1,21 @@
// Copyright (c) 2021 Tailscale Inc & AUTHORS All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// +build windows
// Package winuntil contains misc Windows/win32 helper functions.
package winutil
// GetDesktopPID searches the PID of the process that's running the
// currently active desktop and whether it was found.
// Usually the PID will be for explorer.exe.
func GetDesktopPID() (pid uint32, ok bool) {
hwnd := windows.GetShellWindow()
if hwnd == 0 {
return 0, false
}
var pid uint32
windows.GetWindowThreadProcessId(hwnd, &pid)
return pid, pid != 0
}
Loading…
Cancel
Save