进行DOS系统调用,删除一个当前目录下的文件

王朝other·作者佚名  2006-02-01
窄屏简体版  字體: |||超大  

进行DOS系统调用,删除一个当前目录下的文件

它的说明格式是:int intdos(union REGS *inregs,union REGS *outregs);

该函数的第一个参数是表示相应功能号的入口参数,第二个参数是出口参数,调用后,返回值在outregs的AX寄存器中,并将设置标志寄存器flags,若进位标志器cflag被置位,则表示调用出错,此时AX中为错误代码,若为零,则表示成功.

下面的示例程序是调用该函数进行DOS系统调用,删除一个当前目录下的文件(不需要改变段值):

#include <stdio.h>

#include <dos.h>

int delete_file(char near *filename)

{

union REGS regs;

int ret;

regs.h.ah=0x41;

regs.x.dx=(unsigned)filename;

ret=intdos(&regs,&regs);

return(regs.x.cflag?ret:0);

}

int main(void)

{

char near *filename;

int err;

printf("Enter filename:");

gets(filename);

err=delete_file(filename);

if(!err)

printf("Able to delete",filename);

else

printf("NOT able to delete,this file not exist\n");

return 0;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航