微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题删除多种属性文件一例
栏目软件世界
作者刘骏洪
发布1999年第11期13版
  我用Turbo C 2.0编写了一个可以删除任何属性文件的程序。这个程序的思路是:首先找到需删除文件的地址,(即段地址和偏移地址),接着把文件属性修改为A,最后进行删除,这就像DOS中先用Attrib 命令修改文件属性后,再用DEL命令进行删除。源程序如下:
  #include "stdio.h"
  #include "process.h"
  #include "dos.h"
  main()
  {
  char filename[12];
  printf("Please input filename");
  gets(filename);/*输入要删除的文件名*/
  change (filename);
  delete(filename);
  }
  change(char near *file)/*改变文件属性函数*/
  {
  union REGS inregs,outregs;
  struct SREGS segregs;
  inregs.h.ah=Ox43;/*功能号AH=Ox43*/
  inregsh.al=1;/*入口参数AL=1*/
  inregs.h.cl=FA_ARCH;/*把文件属性修改为A*/
  segregs.ds=FP_SEG(file);/*描述偏移地址*/
  inregs.x.dx=FP_OFF(file);/*描述表段地址*/
  int86x(Ox21,&inregs,&outregs,&segregs);/*INT 21H系统功能调用*/
  return;
  }
  delete(char near*file)
  {
  union REGS inregs,outregs;
  struct SREGS segregs;
  inregs.h.ah=Ox41;/*功能号AH=Ox43*/
  inregs.x.dx=FP_OFF(file);
  segregs.ds=FP_SEG(file);
  int86x(Ox21,&inregs,&outsegs,&segregs);
  return;}