mirror of
https://github.com/lwch/natpass.git
synced 2024-04-21 12:41:54 +00:00
robotgo库支持条件编译
This commit is contained in:
@@ -1,48 +1,11 @@
|
||||
// +build !vnc
|
||||
|
||||
package worker
|
||||
|
||||
import (
|
||||
"natpass/code/client/tunnel/vnc/vncnetwork"
|
||||
|
||||
"github.com/go-vgo/robotgo"
|
||||
"github.com/lwch/logging"
|
||||
)
|
||||
import "natpass/code/client/tunnel/vnc/vncnetwork"
|
||||
|
||||
func runMouse(data *vncnetwork.MouseData) {
|
||||
detach, err := attachDesktop()
|
||||
if err != nil {
|
||||
logging.Error("attach desktop: %v", err)
|
||||
return
|
||||
}
|
||||
defer detach()
|
||||
robotgo.MoveMouse(int(data.GetX()), int(data.GetY()))
|
||||
var key string
|
||||
switch data.GetBtn() {
|
||||
case vncnetwork.MouseData_left:
|
||||
key = "left"
|
||||
case vncnetwork.MouseData_right:
|
||||
key = "right"
|
||||
case vncnetwork.MouseData_middle:
|
||||
key = "center"
|
||||
}
|
||||
switch data.GetType() {
|
||||
case vncnetwork.Status_down:
|
||||
robotgo.MouseToggle("down", key)
|
||||
case vncnetwork.Status_up:
|
||||
robotgo.MouseToggle("up", key)
|
||||
}
|
||||
}
|
||||
|
||||
func runKeyboard(data *vncnetwork.KeyboardData) {
|
||||
detach, err := attachDesktop()
|
||||
if err != nil {
|
||||
logging.Error("attach desktop: %v", err)
|
||||
return
|
||||
}
|
||||
defer detach()
|
||||
switch data.Type {
|
||||
case vncnetwork.Status_down:
|
||||
robotgo.KeyToggle(data.Key, "down")
|
||||
case vncnetwork.Status_up:
|
||||
robotgo.KeyToggle(data.Key, "up")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
// +build vnc
|
||||
|
||||
package worker
|
||||
|
||||
import (
|
||||
"natpass/code/client/tunnel/vnc/vncnetwork"
|
||||
|
||||
"github.com/go-vgo/robotgo"
|
||||
"github.com/lwch/logging"
|
||||
)
|
||||
|
||||
func runMouse(data *vncnetwork.MouseData) {
|
||||
detach, err := attachDesktop()
|
||||
if err != nil {
|
||||
logging.Error("attach desktop: %v", err)
|
||||
return
|
||||
}
|
||||
defer detach()
|
||||
robotgo.MoveMouse(int(data.GetX()), int(data.GetY()))
|
||||
var key string
|
||||
switch data.GetBtn() {
|
||||
case vncnetwork.MouseData_left:
|
||||
key = "left"
|
||||
case vncnetwork.MouseData_right:
|
||||
key = "right"
|
||||
case vncnetwork.MouseData_middle:
|
||||
key = "center"
|
||||
}
|
||||
switch data.GetType() {
|
||||
case vncnetwork.Status_down:
|
||||
robotgo.MouseToggle("down", key)
|
||||
case vncnetwork.Status_up:
|
||||
robotgo.MouseToggle("up", key)
|
||||
}
|
||||
}
|
||||
|
||||
func runKeyboard(data *vncnetwork.KeyboardData) {
|
||||
detach, err := attachDesktop()
|
||||
if err != nil {
|
||||
logging.Error("attach desktop: %v", err)
|
||||
return
|
||||
}
|
||||
defer detach()
|
||||
switch data.Type {
|
||||
case vncnetwork.Status_down:
|
||||
robotgo.KeyToggle(data.Key, "down")
|
||||
case vncnetwork.Status_up:
|
||||
robotgo.KeyToggle(data.Key, "up")
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -25,4 +25,4 @@ go run contrib/bindata/main.go -pkg dashboard -o code/client/dashboard/assets.go
|
||||
go build -ldflags "$LDFLAGS" -o bin/np-svr code/server/*.go
|
||||
# CC=x86_64-w64-mingw32-gcc \
|
||||
# CXX=x86_64-w64-mingw32-g++ \
|
||||
go build -ldflags "$LDFLAGS" -o bin/np-cli code/client/*.go
|
||||
go build -ldflags "$LDFLAGS" -tags "$TAGS" -o bin/np-cli code/client/*.go
|
||||
@@ -150,6 +150,13 @@ func build(t target) {
|
||||
err = copyFile("CHANGELOG.md", path.Join(buildDir, "CHANGELOG.md"))
|
||||
runtime.Assert(err)
|
||||
|
||||
logging.Info("go env...")
|
||||
cmd := exec.Command("go", "env")
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
cmd.Env = os.Environ()
|
||||
runtime.Assert(cmd.Run())
|
||||
|
||||
ldflags := "-X 'main.gitHash=" + gitHash() + "' " +
|
||||
"-X 'main.gitReversion=" + gitReversion() + "' " +
|
||||
"-X 'main.buildTime=" + buildTime() + "' " +
|
||||
@@ -157,7 +164,7 @@ func build(t target) {
|
||||
"--extldflags '-static -fpic -lssp'"
|
||||
|
||||
logging.Info("build server...")
|
||||
cmd := exec.Command("go", "build", "-o", path.Join(buildDir, "np-svr"+t.ext),
|
||||
cmd = exec.Command("go", "build", "-o", path.Join(buildDir, "np-svr"+t.ext),
|
||||
"-ldflags", ldflags,
|
||||
path.Join("code", "server", "main.go"))
|
||||
cmd.Stdout = os.Stdout
|
||||
@@ -168,7 +175,7 @@ func build(t target) {
|
||||
fmt.Sprintf("GOARCH=%s", t.arch))
|
||||
runtime.Assert(cmd.Run())
|
||||
|
||||
logging.Info("build client...")
|
||||
logging.Info("build client(no vnc)...")
|
||||
cmd = exec.Command("go", "build", "-o", path.Join(buildDir, "np-cli"+t.ext),
|
||||
"-ldflags", ldflags,
|
||||
path.Join("code", "client", "main.go"),
|
||||
@@ -176,7 +183,21 @@ func build(t target) {
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
cmd.Env = append(os.Environ(),
|
||||
"CGO_ENABLED=0",
|
||||
fmt.Sprintf("GOOS=%s", t.os),
|
||||
fmt.Sprintf("GOARCH=%s", t.arch),
|
||||
fmt.Sprintf("CC=%s", t.cc),
|
||||
fmt.Sprintf("CXX=%s", t.cxx))
|
||||
runtime.Assert(cmd.Run())
|
||||
|
||||
logging.Info("build client(vnc)...")
|
||||
cmd = exec.Command("go", "build", "-o", path.Join(buildDir, "np-cli"+".vnc"+t.ext),
|
||||
"-ldflags", ldflags,
|
||||
"-tags", "vnc",
|
||||
path.Join("code", "client", "main.go"),
|
||||
path.Join("code", "client", "connect.go"))
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
cmd.Env = append(os.Environ(),
|
||||
fmt.Sprintf("GOOS=%s", t.os),
|
||||
fmt.Sprintf("GOARCH=%s", t.arch),
|
||||
fmt.Sprintf("CC=%s", t.cc),
|
||||
|
||||
Reference in New Issue
Block a user