网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > VC++ > 正文
基于Windows的 TAPI的调制解调器编程
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/15
下载{$ArticleTitle}原创论文样式
 ReadFile(myhModem,RecBuf,Rec_num,&len,0);// 清 除 接 收 缓 冲 区  

     ReadFile(myhModem,RecBuf,7,&len,0);  

      WriteFile(myhModem,"Received",8,&len,0);  

   pwin- >MessageBox(RecBuf,0,MB_OK);  

           break;  

  case LINECALLSTE_OFFERING:  

   lineAnswer(myhCall,NULL,0);  

   break;// 完 成 自 动 应 答  

  case LINECALLSTATE_IDLE:  

   lineDeallocateCall(myhCall);  

   break;  

case LINECALLSTATE_DISCONNECTED:  

lineClose(myhLine);  

lineShutDown(myhTapi);  

break;  

     }  

}  

六、 改 进 措 施  

---- 以 上 程 序 中 使 用 的 是 同 步 读 写 方 式, 只 要WriteFile 或 者Read File 没 有 完 成 指 定 的I/O 任 务, 它 们 就 不 会 返 回 进 程, 在 许 多 情 况 下, 这 是 令 人 难 以 容 忍 的CPU 时 间 浪 费; 改 进 的 办 法 是 在 每 次 读 之 前 采 用ClearCommError 函 数 确 定 系 统 的 串 行 口 缓 冲 区 中 到 底 有 了 多 少 字 节 的 接 收 数 据, 而 写 方 式 采 用 异 步 方 式, 首 先 应 该 定 义 一 个OVERLAPPED 结 构, 从BC++5.0 中 获 得 的 结 构 定 义 如 下  

:  

typedef struct _OVERLAPPED { // o  

    DWORD  Internal;  

    DWORD  InternalHigh;  

    DWORD  Offset;  

    DWORD  OffsetHigh;  

    HANDLE hEvent;  

} OVERLAPPED;  

---- 我 们 定 义OVERLAPPED myOVLP;  

---- 我 们 只 用 到 了 其 中 的hEvent 成 员, 其 他 成 员 均 置0;hEvent 设 置 为CreateEvent(NULL,TRUE,FALSE,NULL) 产 生 的 事 件 句 柄; 然 后 如 下 调 用WriteFile(myhModem,"Received",8,&len,&myOVLP);  

---- 函 数 将 立 即 返 回, 此 后, 只 要GetOverlappedResult 函 数 返 回TRUE , 写 操 作 就 算 完 成 了

  • 上一篇资讯: VC++中实现程序互斥运行
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号