跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • go 编写更新程序改名自删疑问
未分類
2020 年 5 月 16 日

go 编写更新程序改名自删疑问

go 编写更新程序改名自删疑问

資深大佬 : ropon 4

需求:

  • 根据操作系统检查更新
  • 更新后自动改名运行,原程序自删

疑问:

  • Windows 平台 运行 demo.exe 检查更新下载最新版本保存 demo_1.1.exe ,如何自动改名 demo.exe 并自删原程序
  • Linux 平台 运行 demo 检查更新下载最新版本保存 demo_1.1_amd64,如何自动改名 demo 并自删原程序
大佬有話說 (18)

  • 資深大佬 : davidyanxw

    你这是要写个病毒?

  • 資深大佬 : neoblackcap

    下载完了,校验然后就退出原来的程序,启动一个清理程序清理以及改名不就可以了?

  • 資深大佬 : hwdef

    启动第三个程序,
    a b c
    a 升级为 b
    a 退出 调用 c 删除 a

  • 主 資深大佬 : ropon

    @hwdef 一个程序能实现吗

  • 資深大佬 : hwdef

    或者 a 就不做这些功能,,,,c 一直在监控,,更新删除都由 c 来做。

  • 資深大佬 : hwdef

    @ropon 一个程序应该不行吧,,,会占用着,,删不掉。。

  • 資深大佬 : hwdef

    估计要看看底层了。。。让程序运行在内存,,然后删掉自己,,否则会一直锁着吧,,,不懂。。。

  • 資深大佬 : wafm

    我在写桌面程序的时候是做了一个中转应用执行脚本去操作的

  • 資深大佬 : actar

    a 更新,下载 a_update
    a 启动 a_update,传参,a 退出
    a_update 删除 a
    a_update 复制 a_update 到 a
    a_update 启动 a,传参,a_update 退出
    a 删除 a_update

  • 資深大佬 : actar

    go 编写更新程序改名自删疑问 go 编写更新程序改名自删疑问 go 编写更新程序改名自删疑问

  • 資深大佬 : DefoliationM

    第一个程序检测到更新的时候,调用第二个程序(更新程序),结束第一个程序进程并进行更新,然后启动更新后的程序,最后结束更新程序。

  • 資深大佬 : None123

    写病毒还是外挂?

  • 資深大佬 : DefoliationM

    linux 下即使程序在运行也能删除运行文件,但是程序不会结束,会在目录下留下一个.开头的临时文件,所以在 linux 下可以直接替换,但是需要手动重启一下程序。windows 下就不清楚了。

  • 資深大佬 : Vegetable

    linux 好像可以吧
    – 下载新的
    – 把自己删了
    – 把新的改名为自己的文件名
    – 退出
    windows 一个程序可能有点难

  • 資深大佬 : actar

    windows 下,os.Rename() ,可以直接改名。没法直接删除。os.Remove 报 Access is denied.

  • 資深大佬 : lniwn

    这种一般都可以释放一个中间脚本来完成的,windows 释放 bat,linux 释放 sh 或者 python

  • 主 資深大佬 : ropon

    execve(pathname, argv, envp) 加载一个新程序(路径名为 pathname,参数列表为 argv,环境变量列表为 envp )到当前进程的内存。这将丢弃现存的程序文本段,并为新程序重新创建栈、数据段以及堆。通常将这一动作称为执行一个新程序。

  • 資深大佬 : janxin

    一般都是有一个专门的更新程序去做,防止出错

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具