荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: georgehill (佐治·希尔【来自大富翁的小美】), 信区: InstallBBS
标  题: [转载] [转寄] [转贴]BBS程序设计3--常用函数(下)
发信站: BBS 荔园晨风站 (Wed Jun 21 21:29:04 2000), 站内信件

【 以下文字转载自 georgehill 的信箱 】
【 原文由 georgehill.bbs@melon.gznet.edu.cn 所发表 】
发信人: Loafer (木棉浪子), 信区: InstallBBS
标  题: [转贴]BBS程序设计3--常用函数(下)
发信站: 华南网木棉站 (Tue Jun 13 11:26:46 2000), 转信

发信人: Luther (天语≡隐居田园), 信区: BBSDev
标  题: BBS程序设计3--常用函数(下)
发信站: 武汉白云黄鹤站 (Sat Jun  3 21:38:03 2000), 站内信件


发信人: loveyou (独梦人), 信区: Das_Room
标  题: BBS程序设计3--常用函数(下)
发信站: 锦城驿站 (Wed Apr 26 14:26:07 2000), 转信

BBS自己定义的函数很多.不可以都说.常用的也不可能都说完.关于哪方面的
您可以自己去找找,看看人家是怎么写的,怎么用的.我现在只记得一点点而已
大多数都是在用到时到程序里面去查的.
===================================================================
securityreport()
    这个就是进行系统记录的函数。如当您删除某个账号,那么就会在系统
安全记录讨论区内自动产生这个记录,就是调用的这个函数。
    例子:  当您确定删除讨论区后,要写上
                char secu[STRLEN];
                sprintf(secu,"删除讨论区:",binfo.filename);
                securityreport(secu);
    则删除讨论区test后就会在security讨论区中看到文章,题目是“删除
    讨论区:text”,内容是您的各种资料。
===================================================================
show_help(HELP文件名)
   BBS系统的help文件一般放到bbshome的help目录里面.您可以去看看.
   也就是一般的/home/bbs/help目录里.
   如我想在用户聊天时按CTRL+H就可以查看help:
   首先我在help目录里用编辑器编辑一文件: onchathelp 里面写上帮助信息
   然后在聊天的程序talk.c文件里的do_talk_char()函数里(你可以查找一下)
   switch语句里加入:
             case Ctrl('H'):
                  show_help("help/onchathelp");
                  return;
    这样就可以了.当用户在聊天时按下ctrl+h时就会显示你的onchathelp文件
    内容.BBS程序里缺省的当前目录就是BBSHOME的根目录,所以你不用写
      /home/bbs/help/onchathelp 而直接写 help/onchathelp就可以了
=====================================================================
m_send(用户ID)
    给某用户发信.
=====================================================================
do_sendmsg()
    这是发信息的函数,它的参数有点复杂.不是很清楚的话不要用.
    我大概说一下:
    要给站上某人发信息,要先得到它的user_info结构.(自已学吧)
    如得到某人user_info结构保存在user_record里面,那你就可以这样发信息:
      do_sendmsg(user_record,NULL,0,user_record.pid);
      do_sendmsg(user_record,NULL,0,user_record.pid);
                                    ~~~~~~~~~~~~~~~这是保存在user_info
                                                   结构里的用户进程.
======================================================================
getdata()
   这个可是个很有用的函数,它的参数也很多,但不难.记住就行了.
   它在某个确定位置得到用户的输入.
        getdata(0,0,"请输入密码:",passbuf,15,NOECHO,NULL,YEA);
              0,0指在X,Y处显示"请输入密码:"等待用户输入.
              NOECHO指用户的输入以'*'号显示,也可以用DOECHO正常显示.
              NULL指用户什么也不输入,而直接回车时的缺省值.
              passbuf是用来保存用户所输入的内容,你可以在下面接着用
                 它来判断用户输入了什么.
=====================================================================
pressanykey()
    这个函数没有参数.是指要求用户按任意键继续.
    如你在BBS查询收到的信息,当翻到最后一屏时最下面显示的是:
             按任意键继续...
    这就是用了pressanykey()函数的结果.
=====================================================================
modify_user_mode()
    它是定义当前用户的状态.只有一个参数.
    例: 当用户开始聊天时写上 modify_user_mode( TALK );
    例: 当用户开始聊天时写上 modify_user_mode( TALK );
    这个"TALK"是在include目录的modes.h文件里定义了的.
    您可以自己查看.
=====================================================================
setuserfile()
    返回用户的home目录里的某文件的全路径名.
    (* 我先说明一下:用户的home所在位置就在BBSHOME目录下的
       home/用户ID的第一个字母大写/用户代号/ 这个目录里保
       存了每个用户的说明档,注册资料,未保存的信息等等 *)
    例子: 如想显示用户收到的信息
             chat fname[STRLEN];
             setuserfile(fname,"msgfile");
             clear();
             modify_user_mode( LOOKMSGS );
             if( dashf(fname) ) {
                   ansimore(fname,YEA);
                   clear()
             } else {
                   move(5,30);
                   prints("没有信息存在");
                   pressanykey();
             }
     这程序很精典,BBS常用的函数用到很多.
                   move(5,30);
     ansimore()是显示一文件内容,这里fname保存的就是信息文件的全路径名.
     msgfile是放在用户HOME目录里的文件,里面保存的是用户收到过的信息.
     dashf(fname)是判断fname保存的路径的文件是否存在,如存在返回1.
========================================================================
BBS自己特有的函数还有很多很多,你可以多看看程序.我现在只能想起这些,还有
很多,以后用到时我再讲解一下吧.

--
     焚我残躯,熊熊烈火. 生亦何欢,死亦何苦?
     为善除恶,惟光明故. 喜乐悲愁,皆归尘土.
     怜我世人,忧患实多! 怜我世人,忧患实多!

※ 来源:.武汉白云黄鹤站 bbs.whnet.edu.cn.[FROM: 202.112.20.201]

--
   ■◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆■
   ■   喜 欢 与 爱 之 间 的 路 上 我 等 着 你   ■
   ■◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆■

※ 修改:.Loafer 于 Jun 13 11:28:11 修改本文.[FROM: 202.112.18.112]
※ 来源:.华南网木棉站 bbs.gznet.edu.cn.[FROM: 202.112.18.112]
--
※ 转寄:.华南网木棉站 bbs.gznet.edu.cn.[FROM: 210.39.3.97]
--
※ 转载:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.115]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店