![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-18 10:30 |
共 47,814 主题排行 / 349,907 发帖 / 今日 0 篇 / 48,259 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 转贴:添加路径程序 |
| 可打印版本 2,341 / 2 |
| 第1楼 MYS | 发表于 2002-11-01 00:00 |
| 元老会员 发帖 1,637 积分 5,170 来自 广东佛山 | |
|
转贴:添加路径程序 添加路径程序
大家经常发现某些软件安装时修改了AUTOEXEC.BAT文件,使路径 PATH指向自己的目录。本文提供一个小程序可完成此项功能。本程序可以直接 使用: ADPATH 路径名,也可将函数addpath( )用在自己的安 装程序中。 本程序在Turbo C 2.0下编译通过,在X86兼容机上使用正常。 附源程序 ADPATH.C 1 #include 2 #include 3 #include 4 #define flag1 "set path=" 5 #define flag2 "path=" 6 #define endchar(s) (((char *)s)) 7 main(int argc,char *argv) 8 { if(argc<2) 9 {printf("Usage: ADPATH newpath\n" ;exit(1);}10 addpath(argv);} 11 addpath(char *newpath) 12 {FILE *aut,*tmp; 13 char buffer; 14 char tname; 15 tmpnam(tname); 16 if((aut=fopen("c:\\autoexec.bat", "r" )==NULL)17 {printf("erro open autoexec.bat" ;exit(1);}18 if((tmp=fopen(tname, "w" )==NULL)19 {printf("error create tmpfile" ;exit(1);}20 while (!feof(aut)) 21 {strcpy(buffer,"" ;22 fgets(buffer, 256, aut); 23 if((strnicmp(buffer, flag1, strlen(flag1))==0) ||(strnicmp(buffer, flag2, strlen(flag2)))==0) 24 {if(endchar(buffer)=='\n' endchar(buffer) ='\0';25 strcat(buffer, (endchar(buffer)==';' ? "" : ";" );26 strcat(strcat(buffer, newpath), "\n" ;27 }fputs(buffer,tmp); 28 }fclose(aut); 29 fclose(tmp); 30 remove("c:\\autoexec.bat" ;31 rename(tname,"autoexec.new" ;32 system("copy autoexec.new c:\\autoexec.bat" ;33 remove("autoexec.new" ;34 } □山东 许振华 |
|
| 第2楼 baobolz | 发表于 2002-11-03 00:00 |
| 中级用户 发帖 69 积分 373 | |
|
不错。
|
|
| 第3楼 禅宗 | 发表于 2002-11-03 00:00 |
| 元老会员 发帖 300 积分 1,019 来自 广东 | |
|
这个程序还不如直接用批处理来得更自然啊:)
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |