2 Commits
2 changed files with 12 additions and 11 deletions
+5 -1
View File
@@ -1,7 +1,11 @@
// Package remote 提供 RDP/VNC 等远程控制的服务状态查询、配置读写与启停控制。 // Package remote 提供 RDP/VNC 等远程控制的服务状态查询、配置读写与启停控制。
package remote package remote
// VncServerConfig TightVNC 服务端配置(对应注册表 SOFTWARE\TightVNC\Server 下的键值) // VncServerConfig TightVNC 服务端配置(对应注册表 SOFTWARE\TightVNC\Server 下的键值)。
// 37 项 = 最新版 TightVNC(2.8.x) 标准安装落盘的全集(经本机注册表与 tvnserver.exe
// 字符串表双重核对)。另有 ViewOnlyPassword / ControlPassword 两个条件值(只读密码、
// 控制接口管理密码,开对应功能才会写入,本库暂不覆盖——WriteVncServerConfig 是
// 无条件全量写,加字段会向每台客户机落空值),待产品启用只读接入/控制认证时再扩展。
type VncServerConfig struct { type VncServerConfig struct {
ExtraPorts string `json:"extraPorts"` // 额外端口 ExtraPorts string `json:"extraPorts"` // 额外端口
QueryTimeout uint32 `json:"queryTimeout"` // 查询超时 QueryTimeout uint32 `json:"queryTimeout"` // 查询超时
+7 -10
View File
@@ -176,17 +176,14 @@ func getWebShell(recDir string) gin.HandlerFunc {
} }
} else if opData.Op == "resize" { } else if opData.Op == "resize" {
fmt.Println("resize") // Data 反序列化后是 map[string]interface{}, 不能直接断言 ResizeDataType
value, ok := opData.Data.(ResizeDataType) // (此前断言恒失败, 前端 resize 被静默吞掉, PTY 固定 180x30)
if ok { raw, merr := json.Marshal(opData.Data)
err = proc.SetSize(value.Cols, value.Rows) var size ResizeDataType
if err != nil { if merr == nil && json.Unmarshal(raw, &size) == nil && size.Cols > 0 && size.Rows > 0 {
logrus.Errorf("重置大小错误 %d bytes", n) if serr := proc.SetSize(size.Cols, size.Rows); serr != nil {
} else { logrus.Errorf("重置大小错误: %s", serr.Error())
fmt.Println("重置大小成功")
} }
} else {
} }
} }