微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题隐含文件的复制方法
栏目软件操作与技巧
作者张利生
发布1994-11-11
  为此,笔者分析了XCOPY.EXE文件,发现XCOPY进行文件复制时,采用了4EH和4FH两个DOS功能调用进行匹配文件的搜索,其中入口参数CX的低位字节存放的正是文件的属性值。由于XCOPY.EXE程序中没有让隐含文件参加匹配,因而对这类文件不能进行复制。
  下面是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文件进行过修改,均达到了预期目的,而且对于不同的版本,其修改方法是完全一致的,只是指令地址不同而已。(张利生)