Commit 96fa9d14 by 陶腾飞

v1.6.0 域用户备份升级

parent 8d7b13f1
...@@ -15,10 +15,10 @@ func main(){ ...@@ -15,10 +15,10 @@ func main(){
}else{ }else{
logpath = pub.Dir_userprofile + `\` logpath = pub.Dir_userprofile + `\`
} }
//pub.AutoFillInWeDriveDir()
} }
pub.Loger = pub.NewLoger(logpath + `adct.log`) pub.Loger = pub.NewLoger(logpath + `adct.log`)
//pub.AutoFillInWeDriveDir()
//pub.PrintLog("start adct") //pub.PrintLog("start adct")
var backupText = flag.String( pub.Msg_Backup ,"" ,"backup status to AD") var backupText = flag.String( pub.Msg_Backup ,"" ,"backup status to AD")
...@@ -66,12 +66,6 @@ func flag_exec(s * string){ ...@@ -66,12 +66,6 @@ func flag_exec(s * string){
func flag_hour(){ func flag_hour(){
nh := pub.GetHour() nh := pub.GetHour()
switch nh{ switch nh{
case 0:
if pub.RunAsUser(pub.User_name) && pub.IsPrimaryUser(pub.User_name){
pub.SendServerReport(pub.Msg_Report_StartBak)
}
break
default : default :
pub.Execcmd_nowait(`即将关机,如需取消,点击小工具-电源管理-取消自动关机 或运行Z:\tools\【工具】取消关机.bat`) pub.Execcmd_nowait(`即将关机,如需取消,点击小工具-电源管理-取消自动关机 或运行Z:\tools\【工具】取消关机.bat`)
pub.Execcmd_nowait(`shutdown -s -t 300`) pub.Execcmd_nowait(`shutdown -s -t 300`)
......
...@@ -29,6 +29,8 @@ func deamonRun(){ ...@@ -29,6 +29,8 @@ func deamonRun(){
// 新建 读取流 // 新建 读取流
bmsg,_:= bufio.NewReader(conn).ReadBytes(pub.EndSign) bmsg,_:= bufio.NewReader(conn).ReadBytes(pub.EndSign)
if len(bmsg) == 0 {continue}
//pub.PrintLog(string(bmsg))
// 获取ip // 获取ip
ip := pub.GetConnIP(conn.RemoteAddr()) ip := pub.GetConnIP(conn.RemoteAddr())
......
...@@ -8,7 +8,7 @@ const DaemonListen string = ":" + DaemonPort ...@@ -8,7 +8,7 @@ const DaemonListen string = ":" + DaemonPort
const ADServerDaemon string = Host_adserver + DaemonListen const ADServerDaemon string = Host_adserver + DaemonListen
const WxwrokDaemon string = ":16823" const WxwrokDaemon string = ":16823"
const RandMax int = 60 const RandMax int = 60
const Version string = "1.5.2" const Version string = "1.6.0"
// user // // user //
...@@ -72,7 +72,7 @@ const App_Sync_dir string = `C:\Progra~1\zhiwei\AllWay_Sync\Bin\syncappw.exe ...@@ -72,7 +72,7 @@ const App_Sync_dir string = `C:\Progra~1\zhiwei\AllWay_Sync\Bin\syncappw.exe
// backup // // backup //
var Bak_Version string = "0710" var Bak_Version string = "0810"
// reg info // // reg info //
......
...@@ -58,18 +58,19 @@ func (rep *MJreport)Msg_Deal() interface{} { ...@@ -58,18 +58,19 @@ func (rep *MJreport)Msg_Deal() interface{} {
switch rep.Instruction{ switch rep.Instruction{
case Msg_Report_StartBak: case Msg_Report_InitBak:
if !IsPrimaryUser(rep.Username) || RunAsPC(rep.Username){ if !IsPrimaryUser(rep.Username) || RunAsPC(rep.Username){
return nil return nil
} }
return GJbackup() return GJbackup()
case Msg_Report_ReadyBak:
PrintLog(rep.Computername,"开始备份")
return rep
case Msg_Report_OverBak: case Msg_Report_OverBak:
rep.Reg_Write_ADDC(Reg_Name_BackupOverTime,UnixTimeParse(&rep.Timestamp)) PrintLog(rep.Computername,"结束备份")
rep.Pskill(App_Sync) return rep
SysMsgBox(rep.Computername,`备份完成,即将关机,如需取消关机,运行Z:\tools\【工具】取消关机.bat或在小工具-电源管理-取消自动关机`)
return GJexec(Msg_Exec_TurnOffPC)
case Msg_Report_WillTurnOffPC: case Msg_Report_WillTurnOffPC:
rep.Reg_Write_ADDC( rep.Reg_Write_ADDC(
...@@ -212,56 +213,32 @@ func (bak * MJbackup)Msg_Deal() interface{}{ ...@@ -212,56 +213,32 @@ func (bak * MJbackup)Msg_Deal() interface{}{
switch bak.Instruction{ switch bak.Instruction{
case Msg_Backup_Status_Start: case Msg_Backup_Status_Init:
bak.Timestamp = NowTimestamp() bak.Timestamp = NowTimestamp()
bak.Username = User_name bak.Username = User_name
bak.Computername = User_computername bak.Computername = User_computername
bak.Explain = "Backup Start" bak.Explain = "Backup Init"
bak.Instruction = Msg_Backup_Status_Continue bak.Instruction = Msg_Backup_Status_Continue
wetype,weid,err := GetWeDriveVersion()
homefolder := TrimPrefix(Dir_userprofile,`C:\Users\`)
if err !=nil{
SendServerError(err)
wetype = 1
weid = "1"
}
// 确定备份版本
var filename string
switch wetype{
case 1:
filename = "profile_vdocu.xml"
case 2:
filename = "profile_vappdata.xml"
default:
return GJerror(Error_Null_Folder_WeDrive)
}
// 如果版本不是最新 // 如果版本不是最新
currentVersion := Reg_Query_DC(Reg_Name_BackupVersion) currentVersion := Reg_Query_DC(Reg_Name_BackupVersion)
if (bak.Version != currentVersion) || if (bak.Version != currentVersion) ||
NotExist(File_Sync_profile) || NotExist(File_Sync_profile){
NotExist(File_Sync_settings) {
// 1 复制 最新文件 // 1 复制 最新文件
if _,err := CopyFile(Dir_Sync_Config + filename ,SMB_ADSoftPlusSync + filename);err !=nil{ if _,err := CopyFile(File_Sync_profile_full, SMB_ADSoftPlusSync + File_Sync_profile);err !=nil{
return GJerror(err)
}
if _,err := CopyFile(File_Sync_settings_full, SMB_ADSoftPlusSync + File_Sync_settings);err !=nil{
return GJerror(err)
}
// 2 生成 个性 文件
if err := CreateSelfXML(homefolder,Dir_Sync_Config + filename,wetype,weid);err != nil {
return GJerror(err) return GJerror(err)
} }
// 3 更新 新版本 // 3 更新 新版本
Reg_Write_DC(Reg_Name_BackupVersion,bak.Version) Reg_Write_DC(Reg_Name_BackupVersion,bak.Version)
bak.Explain = "Backup update config" bak.Explain = "Backup update config"
} }
ExistFolder(Dir_DCSave + `\` + homefolder)
PntInfo(bak.Explain) PntInfo(bak.Explain)
SendServer(bak) SendServer(bak)
return nil return nil
......
...@@ -44,15 +44,16 @@ const Msg_Report_WillTurnOnPC string = WillTurnOnPC ...@@ -44,15 +44,16 @@ const Msg_Report_WillTurnOnPC string = WillTurnOnPC
const Msg_Report_WillTurnOffPC string = WillTurnOffPC const Msg_Report_WillTurnOffPC string = WillTurnOffPC
const Msg_Report_OverCopyToWeDrive string = "overcopytowedrive" const Msg_Report_OverCopyToWeDrive string = "overcopytowedrive"
const Msg_Report_OverCopyToDeptShare string = "OverCopyToDeptShare" const Msg_Report_OverCopyToDeptShare string = "OverCopyToDeptShare"
const Msg_Report_StartBak string = "startbak" const Msg_Report_ReadyBak string = "readybak"
const Msg_Report_OverBak string = "stopbak" const Msg_Report_InitBak string = "initbak"
const Msg_Report_OverBak string = "overbak"
const Msg_Report_DCInfo string = "DCInfo" const Msg_Report_DCInfo string = "DCInfo"
// msg backup type ////////////////////////////////////////////////////////////// // msg backup type //////////////////////////////////////////////////////////////
const Msg_Backup_Status_Start string = "start" const Msg_Backup_Status_Init string = "init"
const Msg_Backup_Status_Continue string = "Continue" const Msg_Backup_Status_Continue string = "Continue"
const Msg_Backup_Status_Run string = "run" const Msg_Backup_Status_Run string = "run"
...@@ -246,7 +247,7 @@ func (bak * MJbackup)init() { ...@@ -246,7 +247,7 @@ func (bak * MJbackup)init() {
bak.Timestamp = NowTimestamp() bak.Timestamp = NowTimestamp()
bak.MsgType = Msg_Backup bak.MsgType = Msg_Backup
bak.Version = Bak_Version bak.Version = Bak_Version
bak.Instruction = Msg_Backup_Status_Start bak.Instruction = Msg_Backup_Status_Init
} }
......
...@@ -16,6 +16,7 @@ func GetMsgType(b []byte)string{ ...@@ -16,6 +16,7 @@ func GetMsgType(b []byte)string{
//{"msgtype":"report","...":"..."} //{"msgtype":"report","...":"..."}
// 提取第一个冒号后的第二位和第一个逗号的前一位 // 提取第一个冒号后的第二位和第一个逗号的前一位
// 也就是msgtype的内容 // 也就是msgtype的内容
PrintLog(string(b))
return string(b[bytes.IndexByte(b,':')+2:bytes.IndexByte(b,',')-1]) return string(b[bytes.IndexByte(b,':')+2:bytes.IndexByte(b,',')-1])
} }
...@@ -146,7 +147,7 @@ func AutoGetWeDriveDir() (string,error) { ...@@ -146,7 +147,7 @@ func AutoGetWeDriveDir() (string,error) {
} }
func AutoFillInWeDriveDir() { func AutoFillInWeDriveDir() {
if RunAsUser(User_name){Exit() } if RunAsPC(User_name){Exit() }
d := Reg_Query_DC(Reg_Name_WeDriveDir) d := Reg_Query_DC(Reg_Name_WeDriveDir)
if d == "" || NotExist(d){ if d == "" || NotExist(d){
......
...@@ -363,7 +363,7 @@ func menuInitFileShares(ni * walk.NotifyIcon){ ...@@ -363,7 +363,7 @@ func menuInitFileShares(ni * walk.NotifyIcon){
} }
// 为子按钮 添加事件 // 为子按钮 添加事件
na.Triggered().Attach(func(){pub.OpenWindow(pub.SMB_ADMain + `\` + deptshare + `\` + wokrer);return}) na.Triggered().Attach(func(){pub.OpenWindow(pub.SMB_ADMain + deptshare + `\` + wokrer);return})
// 将 子按钮 添加到 菜单 // 将 子按钮 添加到 菜单
nm.Actions().Add(na) nm.Actions().Add(na)
......
...@@ -172,12 +172,14 @@ func wxMsgDealEvent(name, userid,eventkey * string) string { ...@@ -172,12 +172,14 @@ func wxMsgDealEvent(name, userid,eventkey * string) string {
case pub.WXEK_zwDevopsPowerStatus: case pub.WXEK_zwDevopsPowerStatus:
pub.SendWxworkTextToAUserWithName(*name,*userid,"收到查询指令,正在处理") pub.SendWxworkTextToAUserWithName(*name,*userid,"收到查询指令,正在处理")
result,err = pub.SendServer(pub.GJwxworkText(name,userid,pub.Msg_Wxwork_Status)) result,err = pub.SendServer(pub.GJwxworkText(name,userid,pub.Msg_Wxwork_Status))
default: default:
return "" return ""
} }
if err != nil{ if err != nil{
return fmt.Sprintf("%s",err) pub.PrintLog(fmt.Sprintf("%s",err))
return Error_WXWork_Down_STR
} }
pub.ParseJsonBody(result,&wxwork) pub.ParseJsonBody(result,&wxwork)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment