无忧启动论坛

标题: 实用F9一键恢复(1.0版已完成) [打印本页]

作者: liangguojun    时间: 2008-10-5 14:45
标题: 实用F9一键恢复(1.0版已完成)
有这样一个设想,我想用蛙兄的实用F9引导程序制作一个系统恢复程序,但是功能绝对弱于阿文的无忧一键恢复,另外安装上实现自动分区的问题较多,我想只做个半自动安装的就好了,即是划分备份分区为手工,将程序打包为Ghost镜像自动恢复到备份分区来实现安装,其实和手工安装无忧一键恢复差别不多,不知这样的小工具值不值得做。
早先自己自己用QBwin做的一个界面用起来问题不大,现在看到蛙兄的引导程序已趋于完善,感觉做起来功夫不大,所以有此想法,未知大家想法如何,先讨论一下,再动手好点,windows下的安装,画个界面应该不会耗费很多时间。

这段时间比较忙,程序制作出来,没有经过测试,只在自己的机子上安装了一次,希望有条件的朋友帮忙测试一下,DOS下的F9.EXE还可以进一步编写,现在把过去做的两个程序一起放进去了,希望下个版本能合并F91.exe、F92.exe这两个程序为F9.exe。安装界面如下:




程序附有安装说明:
1、点击WinPM按钮,打开软件。
2、选择最后一个分区,点击右键,选择“调整大小/移动”:
3、在“在此之后的自由空间”中输入你想创建的备份分区的大小
4、选择刚才划分出来的分区,即现在的最后一个分区,点击右键,并执行“创建”,在弹出的对话框中,确定
“格式化新分区”,程序会要求输入卷名,可以随意填,安装后的卷标是:F9_SERVICE ;系统类型可选择NTFS或FAT32,但安装程序后,系统类型是FAT32,因为该恢复程序使用DOS系统。
5、选择刚才创建的分区,右击,选择“装载”,在弹出的对话框中确定分配盘符,使该分区可以正常访问。
6、右击该分区,选择“修改—设置主分区”,在弹出的对话框中确认设置主分区操作。
7、最后点击应用,完成刚才设置的所有操作;如果在应用前操作错误,可以点击全部撤销,重新来过。
8、备份分区创建完成后,务必关闭WINPM软件,安装才可以继续。
安装该软件需具备几个条件:
1、适用于单硬盘情况,多磁盘情况未经测试,请不要轻率安装使用。
2、此一键恢复只备份第一个分区,多系统备份暂时未作考虑。
3、最后一个分区能正常访问;
4、最后一个分区已用空间不能超过2MB;(主要考虑数据安全)
5、最后一个分区为主分区。
软件在安装前可以对后四个条件进行检测。


考虑程序未完善,肯定存在有一些未知的BUG,所以,暂建议作交流使用。其实制作这个东西,主要是想和大家交流一键恢复的一些制作方法。程序中借用了一些其它一键恢复的东西,包括界面设计、图片和一些网上公开的QBWIN代码,如果原创作者提出异议,我会作出修正。

程序暂时在永硕网盘中提供下载:http://syf9.ys168.com/


[ 本帖最后由 liangguojun 于 2008-10-12 22:23 编辑 ]
作者: lianjiang    时间: 2008-10-5 14:56
主意不错,就是标题没写好,呵呵。
作者: liangguojun    时间: 2008-10-5 14:59
老大光临,蓬荜生辉!
作者: 紫狐    时间: 2008-10-6 16:02
我现在做的界面都是调用bat,这样要换什么都可以去该bat,不用重新编译EXE,呵呵,就算换内核也很容易。
不过现在就是不知道怎么读取gho文件的长度和时间,没在界面显示这个,比较遗憾。

[ 本帖最后由 紫狐 于 2008-10-6 16:05 编辑 ]
作者: lvyanan    时间: 2008-10-6 16:25
支持大家DIY,只要能方便网友们使用就好。
作者: 大白兔    时间: 2008-10-6 16:51
原帖由 紫狐 于 2008-10-6 16:02 发表
我现在做的界面都是调用bat,这样要换什么都可以去该bat,不用重新编译EXE,呵呵,就算换内核也很容易。
不过现在就是不知道怎么读取gho文件的长度和时间,没在界面显示这个,比较遗憾。



不知版主使用什么软件编译,如果是QBwin,可以通过dir读取到gho文件的创建时间写入文本,然后读出来,去年阿文也告知我可以通过把日期写入文本,需要时再读出来,此法用在隐藏分区较好。
作者: bluetooth    时间: 2008-10-6 17:58
我现在用f9+PE,手动分区,操作,很不错的。
阿文的那个好处是不用放到末尾分区。
作者: 紫狐    时间: 2008-10-7 11:20
原帖由 大白兔 于 2008-10-6 16:51 发表



不知版主使用什么软件编译,如果是QBwin,可以通过dir读取到gho文件的创建时间写入文本,然后读出来,去年阿文也告知我可以通过把日期写入文本,需要时再读出来,此法用在隐藏分区较好。



是用qbwin,不过没搞过文本的读取操作,不知道有没有例子?因为qbwin我也没怎么学,只是参照论坛的源码依样画葫芦而已。
作者: zlgs    时间: 2008-10-7 13:57
原帖由 bluetooth 于 2008-10-6 17:58 发表
我现在用f9+PE,手动分区,操作,很不错的。
阿文的那个好处是不用放到末尾分区。

哇哥的程序部署所在分区是指最后主分区
并不一定是最后分区
安装过程最好只有俩主分区
绝对不会出错
仨主分区曾经被安装到第二主分区上
作者: bluetooth    时间: 2008-10-7 15:36
原帖由 zlgs 于 2008-10-7 13:57 发表

哇哥的程序部署所在分区是指最后主分区
并不一定是最后分区
安装过程最好只有俩主分区
绝对不会出错
仨主分区曾经被安装到第二主分区上

要是认卷标就好了,不管在哪个分区。
作者: netwinxp    时间: 2008-10-7 16:02
认卷标会增加很多代码,个人认为直接认分区的LBA地址最理想。
作者: lvyanan    时间: 2008-10-7 16:38
原帖由 bluetooth 于 2008-10-7 15:36 发表

要是认卷标就好了,不管在哪个分区。

认卷标就不能很好地支持NTFS分区,NTFS分区的卷标一般不标注在分区引导扇上,到数据区去查找是很麻烦的,要耗去大量的代码空间,这是一大遗憾,因此还是直接认分区为好。

[ 本帖最后由 lvyanan 于 2008-10-7 16:41 编辑 ]
作者: liangguojun    时间: 2008-10-7 23:29
原帖由 紫狐 于 2008-10-7 11:20 发表



是用qbwin,不过没搞过文本的读取操作,不知道有没有例子?因为qbwin我也没怎么学,只是参照论坛的源码依样画葫芦而已。




阿文曾经发过一个读取文本密码的bas,可以作为一个例子参考。

[ 本帖最后由 liangguojun 于 2008-10-8 15:04 编辑 ]
作者: 紫狐    时间: 2008-10-8 08:35
原帖由 liangguojun 于 2008-10-7 23:29 发表




阿文曾经发过一个读取文本密码的bas,这个可以作为一个例子参考。

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=27539&extra=&highlight=&page=1



在帖子里没看到例子,不知道xd手头有没有?有的话来一份。
作者: lvyanan    时间: 2008-10-8 08:41
原帖由 bluetooth 于 2008-10-6 17:58 发表
我现在用f9+PE,手动分区,操作,很不错的。
阿文的那个好处是不用放到末尾分区。

实际上,隐藏分区放在硬盘末尾空间上是最安全的了,放在中间某个位置,其被破坏的机率要高的多。
作者: liangguojun    时间: 2008-10-8 15:09
原帖由 紫狐 于 2008-10-8 08:35 发表



在帖子里没看到例子,不知道xd手头有没有?有的话来一份。






不好意思,已发给你了。


这几天单位搞集体合唱,虽然安装的部分已基本完工,但是DOS下的还没有动手,看来要再等等了。

[ 本帖最后由 liangguojun 于 2008-10-8 15:10 编辑 ]
作者: 紫狐    时间: 2008-10-8 16:23
原帖由 liangguojun 于 2008-10-8 15:09 发表






不好意思,已发给你了。


这几天单位搞集体合唱,虽然安装的部分已基本完工,但是DOS下的还没有动手,看来要再等等了。



已经收到,回头有空研究下,呵呵,谢谢。
作者: netwinxp    时间: 2008-10-8 19:12
我也赞成放最后一个主分区,而且最好是真正物理意义上的最后一段空间,保留向HPA转换的可能性。
作者: xuxuezeng    时间: 2008-10-8 21:47
我试了几个基于HPA分区的一健恢复,觉得还是清华同方的HPA好玩一些,主要是因为,HPA分区是最后一个分区且只有一个分区,不像联想的有几个分区,二、布置HPA分区的工具与系统是分开的,可修改性较大,三、进入HPA分区引导的是GRUB,可以实现HPA分区中的多重菜单,可以在HPA分区中放入不同的系统映象!
作者: netwinxp    时间: 2008-10-8 23:48
要进入HPA首先需要解锁HPA,解锁和加锁HPA只是几条ATA指令而已,再加上探测硬盘控制器的基I/O口估计1~2个扇区的代码量就能完成,现在有个难点就是对于多硬盘我们如何探测到是哪个硬盘为启动盘,这个问题如果解决的话就和普通的一键还原没有多大的原理上的区别。对于HPA的一键还原还应该制作一个基于CDROM或U盘来还原,因为硬盘MBR有遭到破坏的可能性。
谁能解决探测哪个硬盘启动的话,我就有办法完成在0磁道实现加解锁HPA。
作者: lvyanan    时间: 2008-10-9 15:03
原帖由 netwinxp 于 2008-10-8 23:48 发表
现在有个难点就是对于多硬盘我们如何探测到是哪个硬盘为启动盘,这个问题如果解决的话就和普通的一键还原没有多大的原理上的区别。 ...

这个问题好说,不必去解决什么,只要是率先启动的硬盘,就是设备号为80的硬盘,其他非启动硬盘的顺序号倒真是不好判断,不过这也不是引导程序所关心的事了,启动硬盘的设备号是一定为80的,甚至用U盘按USB-ZIP方式启动,U盘此时的设备号也是80。我们等着猫版主的大作出来,造福无忧子民哪!
作者: xuxuezeng    时间: 2008-10-9 22:48
原帖由 netwinxp 于 2008-10-8 23:48 发表
要进入HPA首先需要解锁HPA,解锁和加锁HPA只是几条ATA指令而已,再加上探测硬盘控制器的基I/O口估计1~2个扇区的代码量就能完成,现在有个难点就是对于多硬盘我们如何探测到是哪个硬盘为启动盘,这个问题如果解决 ...

    觉得放在MBR上的话,是否可以不考虑谁是启动盘呢?因为只有从装了HPA的硬盘上启动,这个HPA程序在有用,如果不从装了HPA硬盘上启动,HPA分区就没办法用了,再说了装HPA分区的基本上都是安装系统的吧?
作者: netwinxp    时间: 2008-10-9 23:28
原帖由 xuxuezeng 于 2008-10-9 22:48 发表

    觉得放在MBR上的话,是否可以不考虑谁是启动盘呢?因为只有从装了HPA的硬盘上启动,这个HPA程序在有用,如果不从装了HPA硬盘上启动,HPA分区就没办法用了,再说了装HPA分区的基本上都是安装系统的吧?

因为很多启动硬盘对应的硬盘口并不一定是1F0,也就是说要解决获取该硬盘所对应硬盘I/O口的方法。BIOS中断的80H根本没用,所有启动的硬盘大多会被赋予80H。
作者: lvyanan    时间: 2008-10-10 10:29
第一硬盘设备是1F0—1F7,第二硬盘设备是170—177,第三硬盘设备是F0—F7,第四硬盘设备是70—77,我怀疑,虽然这里使用了第一、第二等排列的描述,但有可能它是一个动态的概念,第一硬盘设备的接口仍然是定义给启动硬盘,我们可以用多块硬盘做实验来验证,先在各硬盘主引导扇的出错提示信息字符串里做好编号标记,再用DOS系统启动,运行一个对硬盘直接I/O读主引导扇的小程序,根据读出主引导扇上的编号标记来摸索其中规律,应该可以解决问题。
作者: xuxuezeng    时间: 2008-10-11 10:42
我的想法是这样的,将HPA程序放在硬盘的MBR上,然后由HPA程序去判断其它的,这样的话也许就可以避开80H的问题,但这样的话功能相对弱一些,HPA程序不能放在其它设备上了!
作者: netwinxp    时间: 2008-10-11 18:20
如果我对HPA流程图的理解没错的话,应该是解锁后不用重启就可以访问,加锁后必须重启才能阻止访问。
做在MBR里面的好处是——
如果我们不管加锁还是解锁,所挂接的HPA的分区(或者将要挂接的)表项,一直以EISA分区的形式保留着。我们解完锁马上再次加锁,在没重新启动之前HPA是可访问的(也就是说通过形式上的那个EISA分区是可以访问到内容的),重启之后此时的HPA不能访问(通过形式上的那个EISA分区访问不到内容)。概括起来就是这个HPA操作相对于HPA里面的系统(比如还原系统)来说是透明的。
=========================================================
对于判断自身所在的硬盘I/O,看来只好通过比较各I/O口自身所在扇区号的内容来完成了-_-
作者: liangguojun    时间: 2008-10-12 22:20
1.0版本只作测试、研究、讨论使用,若需正式安装使用一键恢复,请下载其它一键恢复软件。
作者: 星语风    时间: 2008-10-13 07:00
试用了一下,感觉不错,感谢楼主
作者: aidixiao    时间: 2008-10-13 07:28
好东西,谢谢分享!!!!!!v v v v v
作者: sck    时间: 2008-10-13 07:33
谁试用过多磁盘的,正常吗?
作者: lvyanan    时间: 2008-10-13 09:22
原帖由 liangguojun 于 2008-10-12 22:20 发表
1.0版本只作测试、研究、讨论使用,若需正式安装使用一键恢复,请下载其它一键恢复软件。

首先表示祝贺!也非常赞同你的声明,是要接受教训,一键恢复是一个雷区,特别是分区调整部分,因分区环境的复杂性,很难考虑全面,即使是最好的分区软件,遇到不规范的分区,一样要在阴沟里翻船,到时人家责怪的是你的船,而不是阴沟,比如遇到PQ的非整柱面分区,哪个分区软件不翻船呢?很少有人会理解的,希望对此程序感兴趣者能够对此给予充分的理解。我算好的,没介入这个是非之地,挨的骂少多了,阿文就倒霉。。。。。。

[ 本帖最后由 lvyanan 于 2008-10-13 09:27 编辑 ]
作者: 紫狐    时间: 2008-10-13 09:52
楼主,贴个恢复界面的图让大家看看吧,呵呵。
作者: xjn147    时间: 2008-10-13 10:16
星仔
请不能把代码发给我研究下
作者: liangguojun    时间: 2008-10-13 14:24
原帖由 sck 于 2008-10-13 07:33 发表
谁试用过多磁盘的,正常吗?



因个人条件问题,多磁盘不在安装的设置中,应该加个条件不支持安装才好,但是还希望下一次我可以测试一下,或许能做到支持,否则将在安装时提示不支持。
作者: liangguojun    时间: 2008-10-13 14:36
原帖由 紫狐 于 2008-10-13 09:52 发表
楼主,贴个恢复界面的图让大家看看吧,呵呵。









这个界面虽然是自己做的,但引用他人的东西不少。
作者: liangguojun    时间: 2008-10-13 14:42
原帖由 xjn147 于 2008-10-13 10:16 发表
星仔
请不能把代码发给我研究下




做这个实际也从论坛上学来的,DOS下的程序请参考:

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=25927&extra=page%3D3

如果制作过程遇到问题,可以一同讨论,毕竟这也不是什么超级秘密。
作者: lzycl2002    时间: 2008-10-13 14:42
请星仔解决下鼠标驱动问题,不然操作的时候满屏鼠标箭头,跟下雪一样
作者: liangguojun    时间: 2008-10-13 15:18
不知你是否在虚拟机上使用,这个确实有,但实机应该不会。这个虚拟机的问题,不知该如何解决才好。
作者: xuxuezeng    时间: 2008-10-14 20:03
界面还可以,但是不是基于HPA的,虽然HPA的兼容性不是很好,我还是比较看好HPA的一键恢复,不知楼主的速度怎么样?有时候那个界面要花些资源的!
作者: haiou327    时间: 2008-10-14 23:32
小星仔长大了点
支持星仔
作者: szmsys    时间: 2008-10-16 20:29
试用了以下,相当顺利,只是有一个问题:

如果想重新备份,怎么办?
作者: liangguojun    时间: 2008-10-16 21:07
原帖由 szmsys 于 2008-10-16 20:29 发表
试用了以下,相当顺利,只是有一个问题:

如果想重新备份,怎么办?





在工具(F1)菜单中有。
出于备份少、恢复多考虑,对一些人来说减少误操作的可能,故此放在菜单中。
作者: szmsys    时间: 2008-10-19 10:20
楼主老大,如果不涉及版权的话,能不能把安装程序分解一下,上传给坛友下载?
1. 分区说明
2. PM
3. F9安装卸载
4. GHOST镜像
作者: lc1212    时间: 2008-10-21 11:15
今天试了下非常顺利,要是能加上热键修改就好了!
作者: szmsys    时间: 2008-10-21 16:47
最好加上进入DOS的功能,方便维修。
作者: szmsys    时间: 2008-10-21 16:48
加上进入密码,安全,

加上热键的更改与等待时间,最好有隐藏热键选项。
作者: lc1212    时间: 2008-10-21 17:17
原帖由 szmsys 于 2008-10-21 16:48 发表
加上进入密码,安全,

加上热键的更改与等待时间,最好有隐藏热键选项。

偶赞成!尤其是最好有隐藏热键选项。
作者: szmsys    时间: 2008-10-22 20:32
liangguojun老大,最近很忙吗?怎么没动静了?

期待增加“进入DOS”,“热键更改”,“热键显示时间设置”,“调整压缩率”。

万分期待中。。。。。。
作者: liangguojun    时间: 2008-10-22 21:20
蹩脚老大一个!
本人能力有限,现在暂时没有更新,正在做一个GRUB版的一键恢复,这个F9迟点时间再搞了,不过原来的程序按HOME键,输入f9倒是可以进入DOS的。而热键的修改就不要了,既是F9一键恢复,改了F9恐怕不好,况且我也没有掌握如何修改。其它的可以考虑跟进,增加中英文热键提示及无提示选择好点。很感谢szmsys关注。
作者: szmsys    时间: 2008-10-23 08:43
原帖由 liangguojun 于 2008-10-22 21:20 发表
蹩脚老大一个!
本人能力有限,现在暂时没有更新,正在做一个GRUB版的一键恢复,这个F9迟点时间再搞了,不过原来的程序按HOME键,输入f9倒是可以进入DOS的。而热键的修改就不要了,既是F9一键恢复,改了F9恐怕 ...


感谢老大的恢复!

继续期待中。。。。。。
作者: szmsys    时间: 2009-1-10 16:19
楼主,一年过去了,怎么还不见更新呀????
作者: chujiafu    时间: 2009-1-14 07:55
期待楼主更新。期待中……
作者: 23070205    时间: 2009-2-7 16:20
学习了好多东西啊。谢谢
作者: phantom009    时间: 2009-2-7 19:19
试用了一下,感觉不错,感谢楼主
作者: woo88    时间: 2009-4-24 00:19
有源码吗??????
作者: freehzj    时间: 2009-8-23 15:11
标题: 希望能有下文
希望能有下文
作者: freehzj    时间: 2009-8-23 15:39
标题: F9一键恢复安装界面是什么软件做的?
就是这个连结的安装画面:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=130689&extra=page%3D9&page=1




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3