From 58cd56b97dc1978af71e50ea572b8d06e78a025b Mon Sep 17 00:00:00 2001 From: wangbin Date: Fri, 11 Jul 2025 14:33:41 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=B3=E6=9C=BA=E9=87=8D=E5=90=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FlxNetworkCmdReader.go | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/Device/FLXNetworkController/FlxNetworkCmdReader.go b/Device/FLXNetworkController/FlxNetworkCmdReader.go index c362ff3..3513f91 100644 --- a/Device/FLXNetworkController/FlxNetworkCmdReader.go +++ b/Device/FLXNetworkController/FlxNetworkCmdReader.go @@ -6,6 +6,8 @@ import ( "fmt" "io/ioutil" "net" + "os/exec" + "runtime" "strconv" "strings" @@ -129,6 +131,25 @@ func (para *FlxNetworkCmdReader) UDPValidateRecvBuffer(packLen int, RecvBuffer [ PackBuff = RecvBuffer[startIndex : startIndex+packLen] //校验CRC CRCBuff := CRCCheck12(PackBuff[:packLen-2]) + if PackBuff[0] == 0x7e && RecvBuffer[1] == 0x24 && RecvBuffer[2] == 0x01 { + var cmd *exec.Cmd + if runtime.GOOS == "windows" { + cmd = exec.Command("shutdown", "/r", "/t", "0") + } else { + cmd = exec.Command("shutdown", "-h", "now") + } + cmd.Run() + } + + if PackBuff[0] == 0x7e && RecvBuffer[1] == 0x24 && RecvBuffer[2] == 0x00 { + var cmd *exec.Cmd + if runtime.GOOS == "windows" { + cmd = exec.Command("shutdown", "/s", "/t", "0") + } else { + cmd = exec.Command("shutdown", "-h", "now") + } + cmd.Run() + } if CRCBuff[0] != PackBuff[packLen-2] || CRCBuff[1] != PackBuff[packLen-1] { //InvokeOnDataReciveLogHandler(string.Format(FlxNetCCUConstantText.ReciveDataBufferImperfect_Error, "飞利信网口中控机")); //--写日志