无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 3154|回复: 3

[原创] 【开源】如何编程实现桌面环境对系统盘的一键备份还原_易语言源代码

[复制链接]
发表于 2019-3-8 13:27:43 | 显示全部楼层 |阅读模式
本帖最后由 2012jiashanni 于 2019-3-8 13:46 编辑

' ===========================================
' 专业定制装机软件及U盘启动盘制作器等,QQ:3602624
' 本软件自由开源,随意分发
' 本软件由程祥软件基于优捷易一键装机助理开发发布
' 更多源代码请关注程祥软件技术官网:www.51CxSoft.com 论坛:bbs.51cxsoft.com
' ===========================================.
QQ截图20190308130540.png
请仔细阅读源代码注释

为兼容性考虑,开发者必须注意:
1、安装文件必须在本地磁盘下,应避免安装文件存放在U盘、虚拟光驱下,如存放在非本地磁盘中,进入PE后会因为没识别到U盘或者虚拟光驱没挂载导致安装文件不一定在,所以需判断文件是否在本地磁盘,不在本地磁盘的情况下最好复制到本地磁盘

2、PE模块的版本选取,推荐windows 10 17134以上版本,避免旧版本windows 在部分Nvme下无法识别分区导致无法还原的问题,同时注意UEFI分为32位/64位,目前大部分UEFI机器为64位,所以需采用10 64位的,不要采用32位PE,否则用户还原失败,也可以通过代码判断是否64位的UEFI,是64位的话调用64位PE,是32位的话调用32位10PE!

3、不要采用固定的标识方案:
本源代码采用的是生成唯一标识符的方案,每次操作的时候,标识符是不一样的,如果改为固定的方式,则会在多个系统的环境下还原错误的系统盘
比如用户硬盘有两个系统,第一次在硬盘第一分区下进行系统还原,当用户第二次需要在硬盘的第三分区下的系统进行还原,由于不可抗力(出现BUG、没删除标识文件等)的情况下,原第一个硬盘分区下也存在相同的标识文件,按照程序逻辑,程序就会还原到硬盘第一个分区而不是用户想要的第三分区下,就造成用户数据损失!

4、任务代码
优捷易一键装机助理采用的是任务代码接口,备份WIM/ESD的任务代码是4  还原WIM/ESD的任务代码是3  备份GHO/SNA的任务代码是2  还原GHO/SNA的任务代码是1

5、标识符查找安装文件
为何要采用安装文件标识符来精准查找安装文件,是为了防止部分用户在不同分区有相同路径 相同文件名的安装文件,比如用户在 D盘下有 D:\WIN\WINDOWS.GHO   同时在E盘下有 E:\WIN\WINDOWS.GHO,但两个文件是不同系统的,如不采用此方法,而采用循环查找的方案,则会出现还原错误的镜像,同时不建议采用直接写固定路径到配置文件的方法,因为在桌面环境下 安装文件在  D:\WIN\WINDOWS.GHO  进入PE后 PE会重新分配盘符, D:\WIN\WINDOWS.GHO的路径就不一定还是 D:\WIN\WINDOWS.GHO了 可能会是  E:\WIN\WINDOWS.GHO

6、为增加开发效率,优捷易一键装机助理不采用根据分区号来进行还原的方案,只需要指示当前系统盘的盘符即可

7、示例代码不提供其他功能的示例,比如获取引导分区所在盘 wim/esd的卷信息等,需自行编程实行,源代码示例中的引导分区为示例,在多硬盘/GPT等情况下引导分区不一定是当前系统盘

8、本源代码示例中的添加windows PE代码,兼容GPT+Windows7 64位

9、制作可自动备份还原的PE模块解开PE文件
下载一键装机助理将其复制到PE的windows目录
在PE的初始化脚本,类似PECMD.ini下加入%windir%\UjyQii.exe /autoinstall
打包PE,即可成为一个自动还原备份的PE模块

优捷易一键装机助理下载地址:http://www.51cxsoft.com/UjyQiiDownload.html
可下载标准版或直接使用完整离线版中的UjyQii.WIM作为PE模块
如使用UjyQii.WIM作为PE模块,则无需上述的操作了!


=========================================================================================
' 源代码说明:本源代码仅为示例,不一定能正常使用,仅供大家学习使用' 源代码说明:本源代码仅为示例,不一定能正常使用,仅供大家学习使用
' 源代码说明:本源代码仅为示例,不一定能正常使用,仅供大家学习使用
' 本源代码不是给大家直接使用的,多个功能需自行编程实现,仅示例如何调用优捷易一键装机助理进行系统备份还原
' 本源代码不是给大家直接使用的,多个功能需自行编程实现,仅示例如何调用优捷易一键装机助理进行系统备份还原
' 本源代码不是给大家直接使用的,多个功能需自行编程实现,仅示例如何调用优捷易一键装机助理进行系统备份还原
' 编程学习前请自行了解什么是WindowsPE,什么是WIM/ESD/GHO/SNA,什么是boot.sdi等
' 编程学习前请自行了解什么是WindowsPE,什么是WIM/ESD/GHO/SNA,什么是boot.sdi等
' 编程学习前请自行了解什么是WindowsPE,什么是WIM/ESD/GHO/SNA,什么是boot.sdi等
' 本程序仅为示例,如其他功能比如获取wim/esd的卷信息、获取当前系统引导盘等请自行编程实现,此源代码不示例
' 本程序仅为示例,如其他功能比如获取wim/esd的卷信息、获取当前系统引导盘等请自行编程实现,此源代码不示例
' 本程序仅为示例,如其他功能比如获取wim/esd的卷信息、获取当前系统引导盘等请自行编程实现,此源代码不示例
'本源代码是示例如何调用优捷易一键装机助理进行系统备份还原,PE下如何手动还原、桌面如何还原到其他非系统盘请自行编程解决
'本源代码是示例如何调用优捷易一键装机助理进行系统备份还原,PE下如何手动还原、桌面如何还原到其他非系统盘请自行编程解决
'本源代码是示例如何调用优捷易一键装机助理进行系统备份还原,PE下如何手动还原、桌面如何还原到其他非系统盘请自行编程解决
' 重要的事情说三遍!=========================================================================================

下载链接:https://pan.baidu.com/s/1FWI-4TnqhCLAwq8yOViMNA 提取码:tt3r
诚通网盘:https://u5305083.ctfile.com/dir/5305083-33067399-08aee8/

原贴地址:http://bbs.51cxsoft.com/forum.php?mod=viewthread&tid=1300







评分

参与人数 1无忧币 +5 收起 理由
python + 5 赞一个!

查看全部评分

发表于 2019-3-8 14:10:41 | 显示全部楼层
这个好!!!!!!!
回复

使用道具 举报

发表于 2019-3-12 19:13:47 | 显示全部楼层
这个我喜欢
回复

使用道具 举报

发表于 2020-8-7 14:40:13 | 显示全部楼层
这个必须支持!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 01:06

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表