主要参考了水木清华BBS的代码,写得很丑,大家多多指点。
---
bbs.c
------
添加两个函数的定义:
int new_flag_clearb(struct shortfile * bdcache)
{
int rtnval;
char bddir[STRLEN];
setbdir(bddir, bdcache->filename);
brc_initial(bdcache->filename);
rtnval= flag_clearto(0, bddir, YEA);
return rtnval;
}
int clear_all_new_flag()
{
char ans[3],tmpcurbd[STRLEN];
sprintf(genbuf,"确定要清除所有版面的未读标记? [Y/n]");
getdata(t_lines-1,0,genbuf,ans, 2,DOECHO, YEA);
if(ans[0]!='y'&&ans[0]!='Y')
return 0;
prints(" 请稍等...");
strncpy(tmpcurbd, currboard, STRLEN);
currboard[0]='\0';
tmpcurbd[STRLEN-1]=0;
modify_user_mode(READING); //修改用户状态是因为不是这个状态
flag_clear_to不干活
apply_boards(new_flag_clearb);
modify_user_mode(MMENU);
strcpy(currboard, tmpcurbd);
return 1;
}
----
comm_lists.c
---------
加上菜单的入口
{"GoodWish", sendgoodwish,0},
{"ClrAllNFlg", clear_all_new_flag,0},
#ifdef ALLOWSWITCHCODE
{"SwitchCode",switch_code,0},
#endif
----
menu.ini
--------
修改菜单
@ExecBBSNet 0, 0, PERM_POST, "FBBSNet", "(F) 网路连线"
@Dictionary 0, 0, PERM_POST, "Dictionary", "(D) 英汉/汉英字典"
@ClrAllNFlg 0, 0, PERM_POST, "Lclrnewflg", "(L) 清除全部未读标记"
@WinMine 0, 0, PERM_POST, "WinMine", "(W) 扫雷游戏"
@Mary 0, 0, PERM_POST, "Mary", "(M) 超级小玛丽"
--
FROM 202.207.211.100