- 帖子
- 508
- 积分
- 1490
- 技术
- 87
- 捐助
- 0
- 注册时间
- 2008-7-17
|
话说最近楼主的ASCODE成果很多啊
edit.com根据OS的变化变化过多次
但是大致上有两个大版本
在MSDOS6.22以及以前的MSDOS中
edit.com的最新版本是V1.1
都是纯COM格式的可执行文件
在MSDOS7.1/Win95之后
edit.com升级为V2.0
就变成了16位的MZ-EXE格式的可执行文件
在XP下仍然如此
所以打开edit.com会打开ntvdm虚拟机
exe的格式确实有很多
MZ/NE/LE/PE/LX等
不过常见的也就是MZ和PE两种
另外值得一提的是
除了极个别的例外
PE是兼容MZ格式的
也就是说常规的PE格式32位程序
是可以在16位的DOS环境下运行的
我们看到的“This program cannot be run in DOS mode”提示
就是PE程序在DOS下的运行结果
也就是说它在DOS下输出了一行字
这段提示位于PE程序的MZ区
这个区段的代码是可以自行定义的
很多windows的程序就做了自定义
比如win9x下的regedit.exe
就可以在DOS下对注册表进行备份恢复操作
还有比如win9x下的xcopy.exe程序等等
进入xp之后此类双栖程序没有再发现了
可能是因为win9x还是16/32位混合运行环境
而2k/xp/03等已经是纯32位运行环境
所以此类程序也就完成历史使命了 |
|