gitea-tea/vendor/github.com/skratchdot/open-golang/open/exec_windows.go
Lunny Xiao 7a10ea10df Add tea open (#101)
Fix open default to home page

Improve path join and open with no arg

add labels and milestones

Add tea open

Reviewed-on: https://gitea.com/gitea/tea/pulls/101
Reviewed-by: 6543 <6543@noreply.gitea.io>
Reviewed-by: John Olheiser <john.olheiser@gmail.com>
2020-04-01 03:22:24 +00:00

34 lines
697 B
Go

// +build windows
package open
import (
"os"
"os/exec"
"path/filepath"
"strings"
// "syscall"
)
var (
cmd = "url.dll,FileProtocolHandler"
runDll32 = filepath.Join(os.Getenv("SYSTEMROOT"), "System32", "rundll32.exe")
)
func cleaninput(input string) string {
r := strings.NewReplacer("&", "^&")
return r.Replace(input)
}
func open(input string) *exec.Cmd {
cmd := exec.Command(runDll32, cmd, input)
//cmd.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
return cmd
}
func openWith(input string, appName string) *exec.Cmd {
cmd := exec.Command("cmd", "/C", "start", "", appName, cleaninput(input))
//cmd.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
return cmd
}