Board logo

标题: 分区表备份器 miniTO 源码 (三种版本,含可执行) [打印本页]

作者: GOTOmsdos     时间: 2007-4-29 11:42    标题: 分区表备份器 miniTO 源码 (三种版本,含可执行)

现传上源码...希望能对正学习DOS,WINDOWS,磁盘和编程者有点帮助...
内含纯DOS,WIN32控制台和WIN32 GUI三个版本.它们生成的备份文件可以在任何版本中使用.

主功能: 备份/恢复/替换/比较/打印  分区表/分区引导/文件分配表/CMOS

[注意]
不支持USB磁盘

DOS版具有全部功能
WIN版控制台 暂未开启打印功能和CMOS
WIN版GUI 暂未开启比较、打印功能和CMOS

WIN32 版本的暂未开启的功能的模块都是完整的,如果想使用,可自行打开调用的开关或加几句调用的代码就可以了, 以后有时间我再把它们加上去,...)

(在WIN,打印功能是不能使用直接使用DOS的代码的,要把它们先送到编辑框的缓冲区再显示的...有兴趣的也可自己弄...)
因刚刚从DOS代码转写成WIN,程序提示还没有完全改写成WIN的,printf()等还留在里面,不过对编译没有影响,有时间可以改写掉,
因时间关系,没有详细的注释,不过在写的时候,变量名字基本是根据其功能起的,所以,对程序的代码思路还是不难理解的..

[ Last edited by GOTOmsdos on 2007-9-22 at 08:44 AM ]
附件 1: minito源码(修正0值分区项bug).rar (2007-9-5 22:02, 325.9 K,下载次数: 1068)

作者: cchessbd     时间: 2007-4-29 13:13
感谢,下来学习下.

不过我实在是菜... ...
作者: darkradx     时间: 2007-4-29 16:04
谢谢
作者: jyssysz     时间: 2007-4-29 22:11
谢谢共享,高手中的高手。
作者: 0189105     时间: 2007-4-30 08:35
谢谢共享
作者: terse     时间: 2007-4-30 09:47
谢谢共享,高手中的高手!
不过我真的很菜... ...
作者: 0451lym     时间: 2007-4-30 12:54
晕,向楼主敬礼!!!!
作者: 本是     时间: 2007-4-30 21:20
感谢共享源码!赞叹!
作者: GOTOmsdos     时间: 2007-5-1 07:27
win32图形版源码已更新上传,更新如下:
1
加入恢复和替换功能,这样本工具的主体功能都有了.

2
把硬盘号和分区的手动输入改为弹出列表供选择,这样方便使用,并且不容易错.
已用自己的真机测试过,通过...
作者: GOTOmsdos     时间: 2007-5-1 17:45
正在改善程序生成的文件的结构,使得程序即使用户输入了不同类型的文件名而不会犯错..(比如输入了单个分区的FAT的备份文件名,却选了恢复到全部硬盘的分区表的选项, 程序仍然执行恢复单个分区的FAT! 反之亦然)
这样,就强健了..

[ Last edited by GOTOmsdos on 2007-5-3 at 12:13 AM ]
作者: GOTOmsdos     时间: 2007-5-2 21:49
上述的改善强健计划已完成,已更新.
现在加入显示硬盘和分区总表的功能
作者: GOTOmsdos     时间: 2007-5-3 17:53
已加入显示硬盘和分区总表的功能 ,
更新了.
作者: ldljlzw     时间: 2007-5-5 10:37
谢谢!!
作者: GOTOmsdos     时间: 2007-5-5 18:57
又更新如下:
1
现在三个版本生成的文件都互相兼容了...并且,如果误把单个分区的分区表或分区引导或FAT的备份文件恢复到整个硬盘或着相反,也会成功恢复到你想要恢复到的地方! 而不会犯错.
2
增加了在备份文件时写入程序的标志,以便恢复时对输入文件进行检查,这样就避免了用户输入错误的文件名而造成错误.
3
一直没有时间把DOS版的参数和帮助换成简洁的WIN版的,现在都更新了.

至此,三个版本的系列都完整了.
程序也更健壮了..

[ Last edited by GOTOmsdos on 2007-5-5 at 10:41 PM ]
作者: adiwdmd     时间: 2007-5-9 01:24    标题: ddd

谢谢 这个工具非常的棒,基本解决了我的问题.
只是有一点不足: 加载ifs后,用 minito /p /nohp /ifs 命令能正常显示被ifs装载的NTFS分区盘符,却无法显示ifs装载的隐藏分区的盘符.
希望可以改进下.本人菜鸟,如是本人操作错误请多包含

a:\>ifs
Loading IFS driver..
Dos LFN services installed
Mounted DOS Drives: E: F: G:
a:\>minito /p /nohp /ifs
N:N     : PRI/LOG ACT HIDE ID FILE SYSTEM  LABEL       TOTALmb FREEmb
1:1  = E: PRIMARY YES NO   07 NTFS/HPFS                1513   
1:2  = C: LOGICAL NO  NO   0B FAT32        NO NAME     2266    2262   
1:3  = F: LOGICAL NO  NO   07 NTFS/HPFS                2266   
1:4  = D: LOGICAL NO  NO   0B FAT32        NO NAME     760     759   
1:5       LOGICAL NO  YES  1B FAT32        NO NAME     1380
作者: cain     时间: 2007-5-9 09:34
此工具真的很不错,就是不知道它的兼容性、稳定性如何,希望用过的兄弟多多反馈。
作者: GOTOmsdos     时间: 2007-5-9 10:00
感谢关注此工具.

IFS能处理隐藏的FAT分区吗?
我来看看..

[ Last edited by GOTOmsdos on 2007-5-9 at 10:05 AM ]
作者: wang6610     时间: 2007-5-9 10:59
能的。
作者: GOTOmsdos     时间: 2007-5-9 13:07
已加入运行IFS后的隐藏FAT和第一主分区以后的FAT主分区的的支持.
见 dos for bc3.1更新
作者: adiwdmd     时间: 2007-5-9 13:59


  Quote:
Originally posted by GOTOmsdos at 2007-5-9 13:07:
已加入运行IFS后的隐藏FAT和第一主分区以后的FAT主分区的的支持.
见 dos for bc3.1更新

非常感谢~
作者: cain     时间: 2007-5-9 15:14
给GOTOmsdos一个建议:不要为了满足每一个人的不同需要而不断增加功能,这样的话会可能导致软件的稳定性降低。还有软件显示分区信息方面的原理与GDISK等原理有相同之处吗?
作者: GOTOmsdos     时间: 2007-5-9 15:50


  Quote:
不要为了满足每一个人的不同需要而不断增加功能,这样的话会可能导致软件的稳定性降低。

我应网友增加的功能大多是程序本身没有考虑到而又有通用性的,并不是为了满足某个人的个人要求..就拿这个IFS的对隐藏FAT分区的支持,是我忽略了的...
大部分朋友的建议基本上都是有通用性的,这一点,您放心.

  Quote:
软件显示分区信息方面的原理与GDISK等原理有相同之处吗? 。

显示分区信息,不管什么工具,应该没有什么捷径的,只能老老实实根据主分区表一个个读硬盘,读下去,顺藤摸瓜的找出来..
作者: cain     时间: 2007-5-9 15:56


  Quote:
Originally posted by GOTOmsdos at 2007-5-9 15:50:

我应网友增加的功能大多是程序本身没有考虑到而又有通用性的,并不是为了满足某个人的个人要求..就拿这个IFS的对隐藏FAT分区的支持,是我忽略了的 ...

谢谢您的回复。有这样严谨的作风相信软件会越来越好的。在显示分区信息方面兼容性或稳定性有问题,不知有没有其它朋友反映。这么小巧的软件真希望兼容性和稳定性都不会比GDISK等软件差。
作者: GOTOmsdos     时间: 2007-5-9 16:50


  Quote:
在显示分区信息方面兼容性或稳定性有问题

如果能够修正,一定修正.
目前,除了没办法标注NTFS分区的空闲空间外,没有发现有问题.

能不能贴出输出结果?
作者: cain     时间: 2007-5-9 17:16


  Quote:
Originally posted by GOTOmsdos at 2007-5-9 16:50:

如果能够修正,一定修正.
目前,除了没办法标注NTFS分区的空闲空间外,没有发现有问题.

能不能贴出输出结果?

不好意思,让您误解了。我的意思有没有其它人反映显示分区方面的问题。
另,显示NTFS分区的空闲空间应该是个重要的功能,希望能解决。
作者: GOTOmsdos     时间: 2007-5-9 17:31


  Quote:
显示NTFS分区的空闲空间应该是个重要的功能,希望能解决。

NTFS的空闲空间不在DBR里, 现在没有时间了,以后再说吧

其实,FAT16的空闲空间, DOS的DIR命令是不准确的, 本程序用的函数也是跟它一样的,不知道什么原因..
作者: terse     时间: 2007-5-9 21:15
刚用了DOS更新版  结果重启!
还以为又那里出问题呢?原来是我用的参数不对:(
原来用的是 -P-IFS-TURN 变为 /P /IFS /T  问题解决!呵呵 虚惊一场,什么时候变的啊?
顺便问一下  NOHP参数没变吧?
作者: GOTOmsdos     时间: 2007-5-9 23:19
DOS版参数前段时间变的,帮助也更新了,看帮助就知道了.
作者: lianjiang2004     时间: 2007-5-16 09:21
上次报告的联想机子有4个分区,可是minitow只测出一个分区问题,今天再次测了一下,去掉/nohp,结果仍一样。windows下想备份出mbr来看看,结果出错,中止运行。猜测是否有联想的保护程序在工作。
进入dos,运行minito,无任何结果。
换用dspt,检测出的硬盘数据正确。备份出第一扇区数据。发现分区部分的数据与常规的有些不同,不知是否是造成minito检测出错的原因。贴上分区表部分数据,供参考。
8001010007FEFFFF3F00000081142A01
00000000000000000000000000000000
0000C1FF0FFEFFFFC0142A013E219D03
00000000000000000000000000000000
55AA
作者: shenhansl     时间: 2007-5-16 13:39
xuexi  loa
作者: james168     时间: 2007-5-17 13:56
学习。。。非常感谢楼主。。。。
作者: CZLin     时间: 2007-6-5 13:33
向高手学习
作者: lianjiang2004     时间: 2007-6-11 19:53
上次报告的联想机子有4个分区,可是minitow只测出一个分区问题,今天再次测了一下,去掉/nohp,结果仍一样。windows下想备份出mbr来看看,结果出错,中止运行。猜测是否有联想的保护程序在工作。
进入dos,运行minito,无任何结果。
换用dspt,检测出的硬盘数据正确。备份出第一扇区数据。发现分区部分的数据与常规的有些不同,不知是否是造成minito检测出错的原因。贴上分区表部分数据,供参考。
8001010007FEFFFF3F00000081142A01
00000000000000000000000000000000
0000C1FF0FFEFFFFC0142A013E219D03
00000000000000000000000000000000
55AA

-------------------------------
今天用dpit作者的工具在windows下运行,能获得正确的分区。看来这个软件还需完善。
作者: haohaodlam     时间: 2007-6-13 21:46
有没有忽略了虚拟磁盘?
作者: GOTOmsdos     时间: 2007-6-28 20:38


  Quote:
8001010007FEFFFF3F00000081142A01
00000000000000000000000000000000
0000C1FF0FFEFFFFC0142A013E219D03
00000000000000000000000000000000
55AA

这样的分区表 引导代码应该只识别第一分区。因为中间断了
MINITO 也是这样处理的。是为了与真实情况一致
要改成 全部识别是很容易的,去掉一句代码就行了

[ Last edited by GOTOmsdos on 2007-6-28 at 08:41 PM ]
作者: hapeacock     时间: 2007-8-22 20:47
晕,按鼠标中键评了个-1分,对不住啊,
作者: lianjiang2004     时间: 2007-9-1 09:26


  Quote:
Originally posted by GOTOmsdos at 2007-6-28 20:38:

这样的分区表 引导代码应该只识别第一分区。因为中间断了
MINITO 也是这样处理的。是为了与真实情况一致
要改成 全部识别是很容易的,去掉一句 ...

问题是dos能识别其它分区,并进行操作,而minito没能显示出来,无法自动处理ghost备份了。而且ghost是能识别其它分区的。
作者: GOTOmsdos     时间: 2007-9-5 17:15
我来看看..

[ Last edited by GOTOmsdos on 2007-9-5 at 06:52 PM ]
作者: GOTOmsdos     时间: 2007-9-5 17:31
恩, 现在就改过来....

[ Last edited by GOTOmsdos on 2007-12-21 at 09:41 AM ]
作者: GOTOmsdos     时间: 2007-9-5 18:50
已经改过来了..
马上传上来..
作者: GOTOmsdos     时间: 2007-9-5 22:04
minito源码(修正0值分区项bug)
分区项值为0以后的分区不能被识别的BUG已经更正了...
作者: lianjiang2004     时间: 2007-9-5 22:26
谢谢更新,辛苦了。
作者: wangjf     时间: 2007-9-6 21:45
谢谢楼主提供这么好的程序。不过楼主在不同的帖子中发布了好几个版本。同时还分Todisk和MiniTO。现在都不知道那个是最新的了。 建议楼主整理一下以前的帖子都集中在一个帖子中。只把最后更新的比较好用的版本留下。再次支持楼主的不懈努力。替大家谢谢你。
作者: GOTOmsdos     时间: 2007-9-7 00:10
感谢鼓励和关注,搞开发,确实要分版本的,反映一定的连续性和设计历史.另,程序名后面都有版本号的,,,最下面的自然是最新的.

分Todisk和MiniTO的问题:
本来是没有MiniTO的, 只有Todisk,是在网友们的建议下,才从TODISK上增加了处理分区表信息的功能,但考虑到有些网友要求小巧的建议,就把原有的TODISK的主体功能去掉了,就成了现在的MINITO,这就是"MINI"的由来. 他们是各有功能的(写完后,就没有时间了,已记不清是否也把MINITO的全部功能都弄进了TODISK了没有...我有这个想法的,这样就一器在手,功能集于一身...)
作者: renl     时间: 2007-12-20 18:13
十分感激,希望可以向楼主学习
tufeilongye@163.com
QQ:395807028
作者: SUPERNET     时间: 2007-12-20 22:57
很小巧的工具,感谢分享。
作者: renl     时间: 2008-1-9 20:09
前辈
什么时候可以将速度提起来呢
期待中
作者: yangzhiyi     时间: 2008-3-12 12:16
这么好的东东有人评-1?
作者: stronger     时间: 2008-4-7 14:49
感谢
作者: hopefully     时间: 2008-4-10 17:26
学习!!!!!!!!!!!!!!!!!
作者: sadamu9527     时间: 2008-4-23 13:35
不错。非常不错。o(∩_∩)o...
作者: lixun305     时间: 2008-5-20 13:13    标题: 谢谢

解决了一个长期以来困扰的问题,非常感谢!
作者: herny     时间: 2008-9-10 16:53
看看
作者: xxxfree     时间: 2008-10-9 13:30
谢谢楼主分享.
作者: 23070205     时间: 2009-8-10 10:40
谢谢
作者: autumn20080101     时间: 2009-12-5 13:19
先下载,晚点研究
作者: 123help     时间: 2011-1-14 11:52
附件里怎么缺少WIN32 GUI版本的可执行文件?
作者: baiplf     时间: 2011-1-15 22:44
感谢,下来学习下.