隐含文件的复制方法
下面是MS-DOS 3.30版本中XCOPY.EXE文件与“复制”有关的主要程序段:
-U1406 1412
6134:1406 BAC703 MOV DX,03C7
6134:1409 8BOE9004 MOV CX,
6134:140D EB03 JMP 1412
6134:140F BAB104 MOV DX,04B1
6134:1412 E8D5FF CALL 13EA
-U13EA 13FE
6134:13EA F606950401 TEST BYTE PTR ,01
6134:13EF 7404 JZ 13F5
6134:13F1 B44E MOV AH,4E
6134:13F3 EB02 JMP 13F7
6134:13F5 B44F MOV AH,4F
6134:13F7 80269504FE AND BYTE PTR ,FE
6134:13FC CD21 INT 21
6134:13FE C3 RET
弄清了问题的症结所在,自然也就有了解决的办法:只要将CX的低位字节改为07H,即可达到复制隐含文件的目的。
修改的方法如下:
A>REN XCOPY.EXE XCOPY
A>DEBUQ XCOPY
-8100 3081 8B 0E 90 04
6134:1409
-E409 B9 07 00 90
-W
-Q
A>REN XCOPY XCOPY.EXE
经过以上修改的XCOPY命令,就可以复制具有隐含属性的文件了。笔者曾对几种版本的XCOPY.EXE文件进行过修改,均达到了预期目的,而且对于不同的版本,其修改方法是完全一致的,只是指令地址不同而已。(张利生)