如何在Go中更新正在运行的程序

时间:2017-12-03 14:11:41

标签: go

我尝试为我的程序创建一个自动更新程序,它会构建我的程序并将其放在临时文件UPDATED_BINARY中,但是当我尝试用这个临时文件替换当前的可执行文件时,如下所示:

content, err := ioutil.ReadFile("UPDATED_BINARY")
if err != nil {
    return err
}
packyFile, err := os.Create("/bin/packy")
if err != nil {
    return err
}
defer packyFile.Close()
_, err = packyFile.Write(content)
return err
}

它返回文件当前正在使用的错误。有没有办法在Go中替换当前运行的二进制文件?

注意:它必须与Windows兼容

0 个答案:

没有答案