mirror of
https://github.com/golang/sys.git
synced 2026-02-08 11:46:04 +03:00
ShellExecute is an ancient API with an unusual return signature. It pretends to return an HINSTANCE for backwards compatibility with Windows 3, but it's actualy a fake HINSTANCE. What's really happening here, according to MSDN, is that it returns either an Windows error less than or equal to 32, or it succeeds. So we adjust the return value accordingly. Prior to this commit, it was impossible to tell whether this command had succeeded. For example, when using the "runas" verb, ShellExecute did not correctly indicate whether or not permission was granted. Change-Id: Ie60554d6465798bacb9a225c4ead7e8dd62bce14 Reviewed-on: https://go-review.googlesource.com/c/sys/+/199521 Run-TryBot: Jason A. Donenfeld <Jason@zx2c4.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Nenad Kozul <knenad@gmail.com> Reviewed-by: Alex Brainman <alex.brainman@gmail.com>