package main
import (
"fmt"
"github.com/axgle/mahonia"
"os"
"os/exec"
"syscall"
)
func main() {
err:=os.Chdir("D:\Desktop")
if err != nil {
panic(err)
}
cmd := exec.Command("cmd", "/K", "set all_proxy=socks5://127.0.0.1:1080")
cmd.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
cmd.Stdin = os.Stdin
stdoutPipe, err := cmd.StdoutPipe()
if err != nil {
panic(err)
}
err = cmd.Start()
if err != nil {
panic(err)
}
decoder := mahonia.NewDecoder("gbk").NewReader(stdoutPipe)
buf:=make([]byte, 1024)
for{
n,err:=decoder.Read(buf)
if err != nil {
panic(err)
}
fmt.Printf("%s", buf[:n])
}
}
编译出的exe实现了每次打开设置代理,工作目录切换至桌面,cls,tab补全等功能无法使用,打开的算是一个中间层吧,后续随缘。
标题不知道起啥,就当备份代码吧