freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于電話線路的數(shù)據(jù)通信程序的設(shè)計與實現(xiàn)畢業(yè)設(shè)計-資料下載頁

2025-05-12 12:41本頁面

【導(dǎo)讀】電話網(wǎng)絡(luò)是最大的通信網(wǎng)絡(luò),但是我們通常只是用來進行語音傳輸。要,開發(fā)一種可以通過電話線路進行數(shù)據(jù)傳輸?shù)能浖呛苡斜匾?。得個人電腦能夠通過運行微軟的Windows系統(tǒng)來使用電話服務(wù)。礎(chǔ)、TAPI的概述、TAPI的基本概念。而應(yīng)該進行的具體操作。開發(fā)的脈絡(luò),本文最后介紹了一個可以在Windows下面撥打?qū)Ψ降碾娫捥柎a,后程序進行了測試。

  

【正文】 兩個類成員函數(shù),里面封裝了 TAPI 的lineInitializeEx( TAPI 初始化)、 lineNegotiateAPIVersion(版本協(xié)調(diào))、lineOpen(打開一條線路)、 lineDrop(掛斷呼叫)、 lineClose(關(guān)閉一條線路)四個類成員函數(shù)進行線路操作,同時 封裝了在線路操作時需要用到的設(shè)備性能的取得函數(shù) lineGetDevCaps(取得設(shè)備性能)。 int CTapiLine::Open(int nMode) { ……………………………………………………… // 初始化 TAPI. lRet = lineInitializeEx(amp。m_hLineApp, NULL, NULL, CallAnswer, amp。dwNumDevs, amp。dwTAPIVer, amp。stInitParams)。 m_hLineEvent = 。//得到事件的句柄 m_nDevID = 1。 //通過循環(huán)取得可以傳送數(shù)據(jù)的設(shè)備號 for(int i=0。idwNumDevs。i++) { lRet=lineNegotiateAPIVersion(m_hLineApp, i, dwTAPIVer, dwTAPIVer, amp。dwTmpVer, amp。stExtID)。 if(lRet != 0) continue。 lpDevCaps=(LINEDEVCAPS*)malloc(sizeof(LINEDEVCAPS)+1024)。// 取得設(shè)備的性能 ……………………………………… 第 12 頁 共 17頁 lRet = lineGetDevCaps(m_hLineApp, i, dwTmpVer, 0, lpDevCaps)。 if(lpDevCapsdwMediaModes amp。 dwMediaMode) { free(lpDevCaps)。 m_nDevID = i。 break。 } free(lpDevCaps)。 } if(m_nDevID 0) return LINEERR_BADDEVICEID。 //沒有可用的設(shè)備 // 打開一條線路 lRet = lineOpen(m_hLineApp, m_nDevID, amp。m_hLine, dwTAPIVer, 0x00000000, 1,LINECALLPRIVILEGE_OWNER,dwMediaMode,NULL)。 ……………………………………………… .. } int CTapiLine::Close() {………………………………………… . lineDrop(m_hCall, NULL, 0)。 if(m_hLine) lineClose(m_hLine)。 ………………………………… . //釋放前面階段使用到的一些緩存以及對一些信號型變量進行復(fù)位 } 呼叫的發(fā)起和應(yīng)答的實現(xiàn) 呼叫的建立和應(yīng)答使用類成員函數(shù) MakeOutgoingCall、 GetIningCall 來實現(xiàn)。里面封裝了 lineMakeCall 和 lineAnswer 兩個 TAPI 類成員函數(shù)。 int CTapiLine::MakeOutgoingCall(const char *szAddress)//呼出 {//呼叫前對呼叫選項的設(shè) 置 ……………………………………………………… .. lRet = lineMakeCall(m_hLine, amp。m_hCall, szAddress, 0, lpCallParams)。 return (lRet=0)?0:lRet。 } 第 13 頁 共 17頁 int CTapiLine::GetIningCall()//應(yīng)答 {………………………………………………… .. lRet = lineSetNumRings(m_hLine,0,5)。//設(shè)置響鈴次數(shù) lRet = lineAnswer(m_hCall, NULL, 0)。 ………………………………………………… } 數(shù)據(jù)操作的實現(xiàn) 在程序中數(shù)據(jù)的讀取單獨創(chuàng)建一個線程,定義了一個回調(diào)函數(shù) ReadThread封裝了 WriteFile 和 ReadFile 來實現(xiàn)數(shù)據(jù)的發(fā)送。 DWORD WINAPI CMyTapiDlg::ReadThread(LPVOID lpVoid)//接收數(shù)據(jù) { OVERLAPPED ov。 …………………… //ov 的初始化設(shè)置 for(。!pcDlgm_bStopReadThread。) { ReadFile(pcDlgm_hSerialHandle,szBuff,512,amp。dwReadLen,amp。ov)。//讀數(shù)據(jù) …………………………… //錯誤處理 switch(WaitForSingleObject(,INFINITE)) { case WAIT_OBJECT_0: GetOverlappedResult(pcDlgm_hSerialHandle,amp。ov, amp。dwReadLen,FALSE)。 return 0。 } void CMyTapiDlg::OnBtnWrite() //發(fā)送數(shù)據(jù) { …………………… //要使用到的變量的定義 OVERLAPPED ov。 …………………… //ov 的初始化設(shè)置 GetDlgItemText(IDC_EDTWRITE,szBuff,512)。 nRet=WriteFile(m_hSerialHandle,szBuff,strlen(szBuff),amp。dwWriteLen,amp。ov)。//寫數(shù)據(jù) …………………………… //錯誤處理 switch(WaitForSingleObject(,INFINITE)) 第 14 頁 共 17頁 { case WAIT_OBJECT_0: GetOverlappedResult(m_hSerialHandle,amp。ov,amp。dwWriteLen,FALSE)。 break。 default: break。 }。 } 5 軟件測試 模塊編程完結(jié)之后,設(shè)計測試用例,對 GUI 界面外觀和功能等進行檢測。首先測試 GUI 界面上控件的布局是否合理美觀,是否方便操作。然后對界面上的每一個控件進行測試,包括對每個按鈕按下后會激發(fā)什么操作,一個按鈕按下后使得其他按鈕的可用或者禁用是否符合邏輯,文本框中數(shù)據(jù) 輸入輸出的測試。然后根據(jù)功能需求說明書對整個程序的進行功能測試,包括程序的打開,撥號,撥號未完成和撥號完成后掛斷電話,什么時候可以取得 MODEN 的句柄,取得句柄后應(yīng)該能否進行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸?shù)恼_率進行測試。這些測試同時在 Windows 20 Windows XP 系統(tǒng)下同時進行。 由于經(jīng)驗欠缺或其它某些原因,本次 完成的軟件不 可能 是完美無缺的。 測試只能盡量 避免錯誤的產(chǎn)生和消除已經(jīng)產(chǎn)生的錯誤,使程序中的錯誤密度達到盡可能低的程度 , 減少錯誤的引入,但是不可能完全杜絕軟件中的錯誤 。經(jīng)過測試此軟件基本能符合要 求,也能實現(xiàn)各功能。 結(jié) 論 從目前的發(fā)展情況來看, MODEM 已經(jīng)成為遠距離通信的一種重要工具。而 TAPI 編程接口除了支持簡單的 MODEM 撥號和呼叫應(yīng)答外,還可以支持不同種類的傳輸線路,例如 PSTN 電話網(wǎng)、 ISDN 和 ATM 線路等。另外 TAPI 還支持一些復(fù)雜的高級應(yīng)用,如電話會議和語音郵件等。本文通過對 MODEM 遠程數(shù)據(jù)通信和 TAPI 通信編程的研究,編程實現(xiàn)了一個計算機遠程通信程序。 第 15 頁 共 17頁 參考文獻 [1] Cllarks Mirho amp。 Audre Terriase[美 ].WINDOWS95通信編程 [M].北京:清華大學(xué)出版社, 1997。 [2] 錢祝宇 .微機通信技術(shù) [M].北京:電子科技大學(xué)出版社, 1992。 [3] [M].北京:中國水利水電出版社, 2020。 [4] 李現(xiàn)勇 .Visual C++串口通信技術(shù)與工程實踐 [M].北京:人民郵電出版社, 2020。 [5] 李建華等 .RS232 和調(diào)制解調(diào)器高級通信編程 [M].北京:人民郵電出版社, 2020。
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1