版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 本科畢業(yè)設計(論文)</p><p><b> (二零 屆)</b></p><p> 基于.NET短信發(fā)送平臺的設計與實現(xiàn)</p><p> 所在學院 </p><p> 專業(yè)班級 計算機科學與技術 </
2、p><p> 學生姓名 學號 </p><p> 指導教師 職稱 </p><p> 完成日期 年 月 </p><p> 摘要:短信發(fā)送平臺,就是用.NET開發(fā)的短信發(fā)送平臺結合后臺數(shù)據(jù)庫信息設計和短信Mod
3、em設備實現(xiàn)的一種實用性系統(tǒng)。系統(tǒng)由短信Modem、電腦和軟件平臺構成,電腦和短信Modem的通信主要由軟件完成,采用了.NET的串口編程技術,用m_pModemObjArray、m_pIMJiaXun及m_pIMHuaWei和短信Modem二次開發(fā)包提供的接口技術可以方便的實現(xiàn)通信,將信息打包成AT指令形式,再將其添加到命令隊列中,啟動相應線程實現(xiàn)通信。數(shù)據(jù)庫也是系統(tǒng)中的一個比較重要的環(huán)節(jié),數(shù)據(jù)的流向要設計好,用戶信息和短信信息等數(shù)據(jù)
4、都需要數(shù)據(jù)庫的技術支持。通過采用上述的技術和方法,設計實現(xiàn)了用戶登錄平臺的發(fā)送功能。</p><p> 關鍵詞:移動通信;.NET;短信業(yè)務</p><p> Design and Implementation for . NET-messaging platform</p><p> Abstract: Messaging platform, is a pr
5、actical system that used the platform developed by NET, combined with the background database, send and receive SMS messages and SMS Modem device. Through the analysis of the SMS platform,knowa the core technology of the
6、 system, the system is consisted of the SMS Modem, computer and software platforms , computer and messaging Modem completed mainly by the software. Using NET serial port programming, with m_pModemObjArray , m_pIMJiaXun a
7、nd m_pIMHuaWei and seco</p><p> Key words: mobile communications;. NET; SMS</p><p><b> 目錄</b></p><p> 1 緒論錯誤!未定義書簽。</p><p> 1.1 課題的研究背景錯誤!未定義書簽。<
8、/p><p> 1.2 課題的研究目的與意義2</p><p> 1.3 課題的研究內容錯誤!未定義書簽。</p><p> 2 基礎知識簡介3</p><p> 2.1 微軟.NET開發(fā)平臺3</p><p><b> 3 系統(tǒng)分析6</b></p>&l
9、t;p> 3.1 需求概述6</p><p> 3.1.1 業(yè)務整合6</p><p> 3.1.2 設備管理6</p><p> 3.2 功能要求分析6</p><p> 3.2.1 用例描述6</p><p> 3.2.2 業(yè)務定制管理功能6</p><
10、p> 3.2.3 設備定制管理功能7</p><p> 3.2.4 平臺二次開發(fā)功能7</p><p><b> 4 系統(tǒng)設計8</b></p><p> 4.1 系統(tǒng)設計的思想和原則8</p><p> 4.1.1 安全性8</p><p> 4.1.2
11、易操作性8</p><p> 4.1.3 適應性及靈活性8</p><p> 4.1.4 簽于組件的軟件開發(fā)8</p><p> 4.1.5 數(shù)據(jù)共享8</p><p> 4.2 系統(tǒng)架構設計9</p><p> 4.3數(shù)據(jù)庫設計9</p><p> 5 系統(tǒng)
12、實現(xiàn)錯誤!未定義書簽。</p><p> 5.1 設備驅動實現(xiàn)錯誤!未定義書簽。</p><p> 5.1.1 打開及關閉串口的操作錯誤!未定義書簽。</p><p> 5.1.2 收發(fā)短信的操作錯誤!未定義書簽。</p><p> 5.1.3 實現(xiàn)控件錯誤!未定義書簽。</p><p>
13、5.2 設備管理模塊實現(xiàn)18</p><p> 5.2.1 實現(xiàn)思路23</p><p> 5.2.2 數(shù)據(jù)結構錯誤!未定義書簽。</p><p> 5.2.3 對象描述24</p><p> 5.3 任務引擎模塊實現(xiàn)24</p><p> 5.3.1 實現(xiàn)思路29</p>
14、<p> 5.3.2 對象描述29</p><p> 5.4 接口引擎模塊的實現(xiàn)29</p><p> 5.4.1 實現(xiàn)思路29</p><p> 總結錯誤!未定義書簽。</p><p> 致謝錯誤!未定義書簽。</p><p> 參考文獻錯誤!未定義書簽。</p>
15、;<p><b> 1 緒論</b></p><p> 1.1 課題的研究背景</p><p> 1.1.1 短信簡介</p><p> 短信(Short Message Service,簡稱SMS),是用戶通過手機或其他電信終端直接發(fā)送或接收的文字或數(shù)字信息,用戶每次能接收和發(fā)送短信的字符數(shù),是160個英文或數(shù)字字
16、符,或者70個中文字符。</p><p> 短信是伴隨數(shù)字移動通信系統(tǒng)而產(chǎn)生的一種電信業(yè)務,通過移動通信系統(tǒng)的信令信道和信令網(wǎng),傳送文字或數(shù)字短信息,屬于一種非實時的、非語音的數(shù)據(jù)通信業(yè)務。1992年,世界上第一條短信在英國沃達豐的網(wǎng)絡上通過電腦向手機發(fā)送成功,從而宣布手機短信誕生。中國的移動通信網(wǎng)絡在1994年也具備了短信功能,但那時的手機普及程度不高,短信的應用也幾乎沒有。隨著手機的日益普及,從1998年開
17、始,移動、聯(lián)通先后大范圍拓展短信業(yè)務:2000年,中國手機短信息量突破10億條;2001年,達到189億條;2004年,數(shù)字飛漲到900億條。于是短信理所應當?shù)爻蔀榱说谖宸N傳播工具,“信生活”的提法也因此誕生;于是從1998年至今,十多年的時間里,不管你愿意與否,短信已逐漸走入我們的生活,成為生活的一部分,我們的生活也因短信而改變著。</p><p> 1.1.2 短信發(fā)送平臺的興起</p>&
18、lt;p> 短信發(fā)送平臺是基于中國移動、聯(lián)通、電信直接提供的短信端口與互聯(lián)網(wǎng)連接實現(xiàn)與客戶指定號碼進行短信批量發(fā)送和自定義發(fā)送的,它分為軟件單機版(帶客戶端)CS結構和網(wǎng)絡共享版BS結構。</p><p> 自從有短信以來,短信發(fā)送平臺軟件也在不知不覺中闖入了人們的生活,越來越多的單位在使用著短信發(fā)送平臺或者短信群發(fā)軟件進行著短信群發(fā)?,F(xiàn)在的人手機隨時拿在手里,短信提示音響不停,一會兒不注意,就有好幾條
19、未讀的短信,內容無一例外,全是節(jié)日問候。這個春節(jié),許多人的年夜飯都是在手機短信的陪伴下吃完的。短信拜年,早已不是單純地問候了,它已經(jīng)在構建人際關系中起到非常微妙的作用。隨著短信發(fā)送量的日益增長,短信發(fā)送平臺軟件已為商業(yè)網(wǎng)站以及手機生產(chǎn)商的產(chǎn)品和服務、軟件制造業(yè)等產(chǎn)業(yè)打開了巨大的增值空間。 在手機短信未來發(fā)展方向中,有32.34%希望今后手機短信的覆蓋領域能夠更廣泛,26.37%希望手機短信的服務內容能夠更加多元化,20.4%希望今后手機
20、短信服務能夠更加貼近用戶的需求,18.41%的希望手機短信能夠擁有高服務質量,2.49%的網(wǎng)民選擇其它。</p><p> 1.2 課題研究的目的與意義</p><p> 從1992年世界上第一條短信息在英國沃特豐的GSM網(wǎng)絡上通過PC、移動電話發(fā)送成功,1999年后,短信才開始迅速蔓延到世界各國,并持續(xù)爆炸性的增長趨勢。據(jù)權威調研機構Gartner預計,2008年世界范圍內手機短信
21、總量為2.3萬億條。在2000年前中國很多手機還不具備中文短信收發(fā)功能,中國移動于2000年下半年推手機短信業(yè)務。中國聯(lián)通也不甘落后迅速跟進。2000年下半年,短信業(yè)務平均每月增加4000萬條。到2001年,短信業(yè)務已成為中國電信發(fā)展的一大亮點。2001年,全國短信業(yè)務量189億條,收入20億元。其中中國移動159億條,超過預期目標59%。聯(lián)通40億條。中國移動和中國聯(lián)通的市場占有分別為84.13%和15.87%。在2008年年初,中國
22、手機短信發(fā)送量為5900多億條,同比增長37.8%。</p><p> 在此背景下,中國手機短信市場孕育巨大的商機。一個平臺化的信息化產(chǎn)品必將為移動通信的發(fā)展起到推波助瀾的作用,同時為企業(yè)發(fā)展、節(jié)約開支、提高效益起到了明顯的作用,這也是研究和開發(fā)短信發(fā)送平臺的目的和意義。</p><p> 1.3 課題的研究內容</p><p> 本課題的主要內容是根據(jù)短信
23、業(yè)務需求設計一個短信發(fā)送平臺,由.NET平臺開發(fā)并采用B/S體系架構,系統(tǒng)則采用C#基于winform的編程模式,由短信Modem、電腦和軟件平臺構成,采用.NET的串口編程技術實現(xiàn)通信,后臺數(shù)據(jù)庫使用SQL server 2005,預期實現(xiàn)以下功能。強大的客戶分組管理功能根據(jù)公司的需要和習慣,可對客戶群組、部門群組、內外群組等不同組合方式靈活定義通訊錄群組,進行分類管理,并支持通訊錄信息批量導入功能;靈活的自動應答功能,事先設置好相應
24、的應答標志和短信息內容,實時讀取客戶和員工的咨詢信息,客戶和員工通過手機向系統(tǒng)輸入查詢代碼(與應答標志對應的),系統(tǒng)自動向客戶和員工手機發(fā)送相應的應答信息;嚴謹?shù)亩〞r發(fā)送功能,本平臺提供多種定時類型提供選擇,用戶根據(jù)需要選擇發(fā)送周期,靈活設定發(fā)送時間點,并編制好短信內容,系統(tǒng)能夠嚴格按照用戶設置的發(fā)送規(guī)則對指定手機用戶發(fā)送短信;開放的二次開發(fā)接口,本平臺能夠與企業(yè)的其他IT系統(tǒng)開發(fā)接口,可以把手機作為遠程查詢終端,通過手機對原有IT系統(tǒng)
25、進行查詢,也可以使這些IT系統(tǒng)具有自動發(fā)布信息的功能,如小區(qū)物業(yè)公司可以在原有的物業(yè)管理系統(tǒng)自</p><p><b> 2 基礎知識簡介</b></p><p> 2.1 微軟.NET開發(fā)平臺</p><p> .NET開發(fā)平臺是一組用于建立Web服務器應用程序和Windows桌面應用程序的軟件組件,用該平臺創(chuàng)建的應用程序在Comm
26、on Language Runtime(CLR)(通用語言運行環(huán)境)(底層)的控制下運行。CLR是一個軟件引擎,用來加載應用程序,確認它們可以沒有錯誤地執(zhí)行,進行相應的安全許可驗證,執(zhí)行應用程序,然后在運行完成后將它們清除。類庫集提供了使應用程序可以讀寫XML數(shù)據(jù)、在Internet上通信、訪問數(shù)據(jù)庫等的代碼。所有的類庫都建立在一個基礎的類庫之上,它提供管理使用最為頻繁的數(shù)據(jù)類型(例如數(shù)值或文本字符串)的功能,以及諸如文件輸入/輸出等底
27、層功能[2]。</p><p> Web服務器應用程序通常依賴于ASP.NET,一個處理Web請求的服務器端的庫。ASP.NET又依賴一個用于發(fā)送和接收SOAP信息的Web Services庫,以及一個用于以瀏覽器接收用戶輸入并動態(tài)地生成Web頁面以示響應的Web用戶接口(UI)(有時稱作Web 表單)。Windows桌面應用程序通過使用Win表單庫(也稱作Windows 表單)可以顯示一個圖形UI。</
28、p><p> 最后,Visual Studio.NET提供了一個用于在該平臺上創(chuàng)建應用程序的圖形Integrated Development Ewironment(IDE)(集成開發(fā)環(huán)境)。程序員可以使用一種或多種.NET編程語言,來編寫他們的代碼,例如微軟自己的Visual Basic .NET(VB.NET),Visual C++,Visual C#和JScrjpt .NET等。大量其它的.NET編程語言可以從
29、第三方廠商獲得。</p><p> .NET開發(fā)平臺使得開發(fā)者創(chuàng)建運行在Internet Information Server (IIS)(互聯(lián)網(wǎng)信息服務器)Web服務器上的Web應用程序更為容易,它也使創(chuàng)建穩(wěn)定、可靠而又安全的Windows桌面應用程序更為容易。</p><p> .NET開發(fā)平臺包括以下內容:</p><p> .NET Framework
30、(架構),包括:Common Language Runtime(CLR)(通用語言運行環(huán)境),這是用于運行和加載應用程序的軟件組件;新的類庫,分級組織了開發(fā)者可以在他們的應用程序中用來顯示圖形用戶界面、訪問數(shù)據(jù)庫和文件以及在Web上通信的代碼集。</p><p> .NET開發(fā)者工具,包括:Visual Studio .NET Integrated Development Environment (IDE)(V
31、isual Studio .NET集成開發(fā)環(huán)境),用來開發(fā)和測試應用程序;.NET編程語言(例如Visual Basic .NET和新的Visual C#),用來創(chuàng)建運行在CLR下并且使用類庫的應用程序。</p><p> ASP .NET,一個取代以前的Active Server Pages (ASP)的特殊類庫,用來創(chuàng)建動態(tài)的Web內容和Web服務器應用程序,這些都將采用諸如HTML、XML和Simple
32、Object Access Protocol(SOAP)(簡單對象訪問協(xié)議)等Internet協(xié)議和數(shù)據(jù)格式[3] [4]。</p><p> Web Services是一個軟件組件,它通過將消息以XML格式進行編碼,并將消息通過標準的Internet協(xié)議(例如Hypertext Transfer Prorocol (HTTP)(超文本傳輸協(xié)議))發(fā)送出去來與其它的應用程序進行通信。一個Web Services
33、類似于這樣一個Web站點:沒有用戶接口,向應用程序而非用戶提供服務。Web Services不從瀏覽器獲得請求并返回相應的Web頁面,而是從應用程序接收XML格式的請求消息,執(zhí)行任務,然后向應用程序返回XML格式的響應消息。</p><p> SOAP作為一種用于Web services的消息標準。一條SOAP消息如同一封信,由一個基于XML格式的“信封”和載有消息數(shù)據(jù)的“正文”兩部分組成,“信封”部分包含一個
34、指明消息接收者地址的頭部和一系列投遞選項(例如加密信息)。 (微軟喜歡將此編程模型稱作“XML Web Services”——采用“XML”意在強調其開放性?!沁@個基于一套World Wide Web Consortium (W3C)協(xié)議標準的模型,業(yè)界習慣上簡單稱其為“Web Services”。)</p><p> 微軟和IBM等其他供應商提倡將Web Services作為用于Internet上的互連
35、應用程序通信的程序設計模型。這些公司相信通過Internet相互連接的應用程序,將增強與它們的合作供應商和客戶協(xié)同工作的商務能力。通過在一個現(xiàn)有的公司應用程序的頂層創(chuàng)建一個Web Services層,各個組織可以允許外部系統(tǒng)通過Internet(或企業(yè)Intranet)調用應用程序的功能,但卻不必修改應用程序本身。例如,有幾家公司正在創(chuàng)建Web Services,來充當駐留在主機內的訂單一入口應用程序的前端,這允許客戶的訂貨系統(tǒng)通過In
36、ternet提交訂單。作為公司內整合由各個部門獨立開發(fā)的應用程序,以降低伴隨公司合并與購并而來的IT整合費用的方法,將Web Services放在現(xiàn)有應用程序的頂層相當重要[5]。</p><p> 所有在.NET開發(fā)平臺上創(chuàng)建的應用程序運行都需要運行兩個核心塊:</p><p> Common Language Runtime(CLR)(通用語言運行環(huán)境),這是一個軟件引擎,用來加載
37、應用程序,確認它們可以沒有錯誤地運行,進行相應的安全許可驗證,執(zhí)行應用程序,然后在完成后將它們清除。</p><p> NET Framework類庫,向程序員提供所需用來編寫在CLR的控制下運行的代碼的軟件組件。它們按照單一有序的分級組織提供了一個龐大的功能集——從文件系統(tǒng)到對XML功能的網(wǎng)絡訪問的每一樣功能。</p><p> CLR有兩個主要的目標,一個是提高應用程序的穩(wěn)定性和安
38、全性;另一個是減少應用程序開發(fā)者所必須寫的冗長而又易出錯的底層代碼的容量。這兩個目標類似于諸如Sun和IBM等廠商試圖用Unix和主機上的Java平臺去解決的問題。為了解決Windows上的這些問題,CLR對加載和執(zhí)行應用程序的編程模型做了根本的改變。 CLR如何工作 一個應用程序是作為稱作匯編的文件或文件集進入CLR的。這個匯編包是Microsoft Intermediate Language(MSIL)代碼,CLR將其翻譯成可執(zhí)行的
39、本機代碼。由于可以對從MSIL到本機代碼的應用程序翻譯的控制,使得CLR可以管理應用程序的執(zhí)行并且防止各種問題的發(fā)生,因此也就有了術語可控制代碼。</p><p> 除了MSIL代碼,匯編還包含有詳細描述了MSIL代碼正確執(zhí)行所需的各種相關數(shù)據(jù)類型的元數(shù)據(jù)。最后,匯編還包括一個清單——一個列出了匯編中所有文件和軟件組件的文檔,該文檔還指出CLR在哪里可以找到具有應用程序運行所需組件的其它匯編[6]。</p
40、><p> .NET開發(fā)平臺的發(fā)布給微軟的客戶及其合作廠商帶來一個基本的問題:和目前的Windows平臺或Java相比,我們應當把多少開發(fā)和市場的經(jīng)費投入到新的平臺中?在做決策時,組織應當考慮到以下需求:</p><p> 可靠性和安全性和Windows或者Java中的任何一個相比,.NET開發(fā)平臺提供了更好的應用程序可靠性和安全性,這尤其要歸功于Common Language Runti
41、me ( CLR ),及其基本編碼錯誤(如緩沖區(qū)溢出)的防止,和管理員定義版本政策和安全限制的增強。然而,一個應用僅僅同它最弱的環(huán)節(jié)一樣強壯:具有不可控制代碼的.NET應用程序僅與那些代碼具有相同的可靠性和安全性。Java有一個用以調用本機代碼的機制,Java Native Interface ( JNI ) ( Java本機接口),但是現(xiàn)有的代碼必須加以修改才允許其被調用。</p><p> 開發(fā)成本。.N
42、ET開發(fā)平臺在開發(fā)Web應用程序(尤其是Web服務)時明顯優(yōu)于現(xiàn)在的Windows版本,它甚至有著遠遠超越Java的優(yōu)勢,這得益于VisualStudio.NET復雜的圖形編輯器和向導。</p><p> 類庫和CLR還向采用所有.NET編程語言的應用程序提供了單純一致的目標,它應當簡化培訓程序員和編寫維護代碼的工作。多種編程語言的支持還使.NET開發(fā)平臺具有一個強于Java的優(yōu)點,因為熟悉舊的Windows語
43、言,例如Visual Basic的開發(fā)者,無需再從頭學習.NET中相同的內容。.NET開發(fā)平臺還給主要投資于Windows代碼的組織提供了一種方法,使它們可以在新的.NET開發(fā)平臺中重用不可控制代碼,這樣這些組織就可以逐漸地遷移到新平臺上來[7]。</p><p><b> 3 系統(tǒng)分析</b></p><p> 主要描述系統(tǒng)的需求分析,首先進行需求的總體介紹,
44、然后圍繞需求的總體介紹給出具體需求的功能描述,也就為系統(tǒng)設計提供一個需求的基礎。</p><p><b> 3.1 需求概述</b></p><p> 本部分主要描述系統(tǒng)需求的提出和描述,主要根據(jù)平臺的定位來提出。平臺主要面向多重業(yè)務系統(tǒng),并且面向多類通信設備。因此總體需求圍繞著業(yè)務整合和設備管理而提出。</p><p> 3.1.1
45、 業(yè)務整合</p><p> 是將基于各種不同平臺、用不同方案建立的異構應用業(yè)務整合集成。通過建立底層結構,來聯(lián)系橫貫整個企業(yè)的異構系統(tǒng)、應用、數(shù)據(jù)源等,完成在企業(yè)內部的OA, ERP, CRM, SCM、數(shù)據(jù)庫、數(shù)據(jù)倉庫、交流網(wǎng)站,以及其他重要的內部系統(tǒng)之間無縫地共享和交換數(shù)據(jù)的需要。有了業(yè)務平臺,企業(yè)就可以將企業(yè)核心應用和新的移動信息業(yè)務解決方案結合在一起。</p><p> 3.
46、1.2 設備管理</p><p> 本平臺的通信設備主要包括移動信息機、SIM Card, GPRS Modem, 56XMessage Modem、安裝Windows NT的PC組成硬件平臺。Modem通過串口與PC服務器連接,移動信息機通過雙絞線與PC服務器連接;一般而言,使用Modem實現(xiàn)接收功能,用移動信息機實現(xiàn)發(fā)送功能;也可以直接登錄PC服務器,使用WEB界面直接控制短信平臺的發(fā)送及交互功能。<
47、;/p><p> 3.2 功能需求分析</p><p> 本部分描述系統(tǒng)具體功能需求,首先給出需求用例,然后根據(jù)用例描述具體功能邊界。</p><p> 3.2.1 用例描述</p><p> 各個業(yè)務應用系統(tǒng)通過平臺提供集成服務進行集成,從而達到業(yè)務整合的目的。因此,需要實現(xiàn)業(yè)務整合必須提供一個業(yè)務集成服務。只有在集成業(yè)務的基礎上才
48、能方便用戶通過平臺進行短信的收發(fā)。</p><p> 收發(fā)短信最終都要通過短信收發(fā)設備完成,因此,需要對平臺能夠控制的短信設備進行管理。從而達到和所有手機用戶通信的目的。同時,通過短信平臺,手機用戶可以直接與企業(yè)內部網(wǎng)絡實現(xiàn)交互,不受地域的限制,從而達到提高辦公效率的目的。</p><p> 從業(yè)務整合的需要出發(fā),平臺應該具備業(yè)務定制管理功能;從設備管理的需要出發(fā),平臺需要能夠配置和驅
49、動相關的短信收發(fā)設備。下面將會對針對需求的提出進行細化分析。</p><p> 3.2.2 業(yè)務定制管理功能</p><p> 業(yè)務定制功能主要為了滿足業(yè)務整合的需要。</p><p> 所謂業(yè)務定制,就是能夠讓需要接入短信平臺的業(yè)務可以通過平臺進行定制。當用戶需要接入一個IT系統(tǒng)或者增加一項新的短信業(yè)務時,首先要在平臺定制該項業(yè)務,然后通過二次開發(fā)接口或者
50、平臺自身的業(yè)務功能服務實現(xiàn)該項業(yè)務。</p><p> 所謂業(yè)務管理,就是平臺將用戶定制的業(yè)務進行管理。用戶可以通過平臺將自己定制的業(yè)務進行查詢、修改、刪除等相關操作。比如:某項業(yè)務的時間、設備、代碼等參數(shù)需要修改,通過平臺要能夠完成;當某項業(yè)務不再使用時可以進行刪除;用戶定制的業(yè)務也可以進行查詢,平臺要能夠提供足夠的業(yè)務信息方便用戶進行管理。</p><p> 所有在平臺上定制和管理
51、的業(yè)務,通過平臺的自身引擎觸發(fā)任務并且提供通信能力。例如:在短信平臺設置定時發(fā)送指定短信,應用于企業(yè)通知、任務下達??梢詫χ付蛻羧哼M行短信調查,應用于投票、營銷活動抽獎等方面。</p><p> 3.2.3 設備定制管理功能</p><p> 設備定制管理功能是為了滿足設備管理的需要。</p><p> 所謂設備定制,主要為了實現(xiàn)新的通信設備接入平臺,平臺
52、可以通過二次開發(fā)接口調用相應的設備,為業(yè)務提供服務。</p><p> 所謂設備管理,主要為了實現(xiàn)平臺對各種通信設備的資源配置和調用管理。比如某項業(yè)務需要從信息機采集信息而從Modem回復通知,就可以通過平臺對設備的管理功能實現(xiàn)該種需要。</p><p> 針對不同的IT系統(tǒng)和平臺沒有實現(xiàn)的通信設備,平臺需要提供二次開發(fā)接口功能方便IT系統(tǒng)接入和設備擴展。因此,二次開發(fā)接口的提供必不可
53、少。</p><p> 3.2.4 平臺二次開發(fā)功能</p><p> 針對不同IT系統(tǒng)提供二次開發(fā)組件,平臺要能夠方便快捷的進行二次開發(fā)和部署。可以在PC服務器端接入更多的IT系統(tǒng),實現(xiàn)不同的業(yè)務系統(tǒng)接入。</p><p> 針對更多的通信設備擴展,平臺要能夠提供一個定制接入的機制方便通信設備的接入和擴展。</p><p><
54、b> 4 系統(tǒng)設計</b></p><p> 本章主要根據(jù)需求分析的結果和要求,進行系統(tǒng)設計。首先給出系統(tǒng)設計原則,然后根據(jù)系統(tǒng)設計原則進行系統(tǒng)架構設計、數(shù)據(jù)庫設計、相關功能模塊設計,為系統(tǒng)實現(xiàn)提供設計基礎。</p><p> 4.1 系統(tǒng)設計的思想和原則</p><p> 系統(tǒng)設計必須滿足先進性、擴展性、標準性、易用性、易管理性及安全
55、性等原則。</p><p> 4.1.1 安全性</p><p> 系統(tǒng)中的各種數(shù)據(jù)應該保證嚴格的機密性,尤其在本系統(tǒng)的方案中,所有的企業(yè)信息數(shù)據(jù)都集中存儲在中央服務器之中,而且需要通過網(wǎng)絡在客戶機和服務器之間傳輸。系統(tǒng)應該提供安全的措施來保障數(shù)據(jù)的存儲安全以及傳輸安全。Microsoft .NET Framework是一個開發(fā)和部署智能客戶端的優(yōu)秀平臺。.NET部署模型基于Web服
56、務器獲取應用程序最新版本的客戶端,這樣做消除了許多麻煩。但是,也增加了客戶端下載惡意代碼的可能性??蛻舳巳绾瘟私馄渲械牟町??為此,.NET Framework引入一個名為代碼訪問安全性(CAS)的安全系統(tǒng)。CAS有助于集中信任決策,并引入部分受信任的代碼這一概念,該代碼可以在減少的權限下運行。</p><p> 4.1.2 易操作性</p><p> 界面容易操作應作為系統(tǒng)的一個重要
57、特點。用戶界面是系統(tǒng)用戶最直接感受的一項內容,易操作性不僅降低了用戶使用系統(tǒng)復雜度,同時在某種意義上也提高系統(tǒng)的工作效率。</p><p> 4.1.3 適應性及靈活性</p><p> 系統(tǒng)設計需要充分考慮到實際系統(tǒng)在今后工作發(fā)展而產(chǎn)生的升級需求,盡量保證在原有代碼基礎上容易適應、容易修改和升級的目標。</p><p> 4.1.4 簽于組件的軟件開發(fā)&
58、lt;/p><p> 基于組件的軟件開發(fā)方法已成為現(xiàn)代軟件開發(fā)方法的主流,組件的開放性、互聯(lián)性、可重用性和可裁剪性,給基于組建的應用系統(tǒng)帶來了可重組性和對實際應用需求和運行環(huán)境的針對性的提高。按照組件標準進行業(yè)務功能開發(fā),是保證整個系統(tǒng)的可維護性、可重用性、可重組性、易擴充性的最為有效方法。</p><p> 4.1.5 數(shù)據(jù)共享</p><p> 對所有的數(shù)據(jù)
59、采用合理的數(shù)據(jù)結構,把它們有效地組織好,進行統(tǒng)一維護管理,避免數(shù)據(jù)重復,減少冗余,提高準確性和可靠性,保證數(shù)據(jù)的統(tǒng)一性和完整性。</p><p> 4.2 系統(tǒng)架構設計</p><p> 部分先給出系統(tǒng)層次結構圖,根據(jù)層次結構的定義給出系統(tǒng)架構的設計和描述。</p><p><b> 圖4-1層次結構圖</b></p>&
60、lt;p> 系統(tǒng)采用三層架構體系,設備通信層負責進行數(shù)據(jù)的接收和發(fā)送。數(shù)據(jù)交換服務則將數(shù)據(jù)通信層或者應用接口層的數(shù)據(jù)進行處理和傳遞。</p><p> 各個業(yè)務應用系統(tǒng)再通過應用接口層采集歸并數(shù)據(jù)。整個過程的數(shù)據(jù)緩存都由數(shù)據(jù)庫完成。所以數(shù)據(jù)庫貫穿始終。</p><p> 數(shù)據(jù)分為上行數(shù)據(jù)和下行數(shù)據(jù)兩種。</p><p> 上行數(shù)據(jù):設備通信層首先采集數(shù)
61、據(jù)并將數(shù)據(jù)進行初步過濾整理存儲到數(shù)據(jù)庫當中;數(shù)據(jù)交換層輪詢設備通信層處理后的上行數(shù)據(jù),如果數(shù)據(jù)交換未處理的數(shù)據(jù),則根據(jù)不同業(yè)務的不同要求進行處理并將處理后的數(shù)據(jù)存儲到數(shù)據(jù)庫當中;應用接口層輪詢數(shù)據(jù)交換層處理后的數(shù)據(jù),如有業(yè)務接口為處理的數(shù)據(jù)則根據(jù)業(yè)務需要采集歸并。完成一個數(shù)據(jù)的處理流程。</p><p> 下行數(shù)據(jù):用戶將要發(fā)送的數(shù)據(jù)提供給應用接口;應用接口將要發(fā)送的數(shù)據(jù)提交給數(shù)據(jù)交換;數(shù)據(jù)交換根據(jù)需要將數(shù)據(jù)提
62、交給設備通信進行發(fā)送。全過程同樣使用數(shù)據(jù)庫進行緩存[8]。</p><p> 4.3 數(shù)據(jù)庫設計</p><p> 通過對系統(tǒng)需要的功能的分析,設計出后臺數(shù)據(jù)的關系,給出系統(tǒng)數(shù)據(jù)庫的概念模型,即繪制實體關系圖(E-R模型)。</p><p><b> 圖4-2 ER圖</b></p><p><b>
63、 數(shù)據(jù)庫設計結構原則</b></p><p> 1)與程序流程有關的狀態(tài)信息使用域進行限制和定義,不允許最終用戶修改定義</p><p> 2)用戶可修改的狀態(tài)列表信息,用數(shù)據(jù)表來定義,一經(jīng)創(chuàng)建后,用戶只可修改名稱,不能修改代碼,修改后的名稱與原名稱應代表相同的意義。</p><p> 3)用戶采用列表錄入的文字信息,在一個統(tǒng)一的“系統(tǒng)信息”表中定
64、義,用戶可任意創(chuàng)建和修改。用此種方法錄入的信息,錄入的信息與選擇列表不存在約束關系,列表只是作為文字錄入的一種輔助手段。</p><p> 4)輔助編碼表應至少有兩列一一代碼和名稱。只有在名稱非常穩(wěn)定的情況下才可以不使用代碼。使用編碼表的好處是在應用程序界面中,不同的地方出現(xiàn)同一種數(shù)據(jù)的錄入(如錄入數(shù)據(jù)或查詢過濾條件)時只需定義一次選擇列表,不會出現(xiàn)兩處沖突的現(xiàn)象,方便編程。</p><p&
65、gt; 5)所有記錄業(yè)務數(shù)據(jù)的表中都設有“錄入員”和“錄入日期”列,由系統(tǒng)自動記錄。</p><p> 6)記錄業(yè)務數(shù)據(jù)的表中,根據(jù)需要設置“過程”和“狀態(tài)”,列,“過程”列用一位數(shù)字或字符記錄如錄入審核記賬等過程狀態(tài);“狀態(tài)”列用一位數(shù)字或字符記錄如正常作廢刪除等狀態(tài)。所有表的“過程”狀態(tài)的改變日期和操作人由一單獨表來記錄,表中記錄狀態(tài)改變所涉及的表標識記錄標識操作人和操作日期。</p>&l
66、t;p> 7)基本編碼表中應設置“編碼”‘縮語’“名稱”,“編碼”作為主鍵與其它表的外鍵形成對應關系,完成基于主外鍵的完整性約束。</p><p> 8)記錄錄入單據(jù)的表中設置“自動單據(jù)號”,由一字符開始以區(qū)分單據(jù)類型,后跟一數(shù)字序列表示序號?!白詣訂螕?jù)號”由系統(tǒng)自動生成,作為主表的主鍵,不允許用戶修改,并作為連接主表和明細表的外鍵。</p><p> 9)明細表中設置序號列,
67、用于同一單據(jù)中排列各行的序號。</p><p> 10)用于記錄業(yè)務數(shù)據(jù)的數(shù)據(jù)表與用于報表的數(shù)據(jù)表分別存于不同的數(shù)據(jù)庫中,分別命名為“業(yè)務數(shù)據(jù)庫”和“決策數(shù)據(jù)庫”?!皹I(yè)務數(shù)據(jù)庫”獨立于“決策數(shù)據(jù)庫”進行設計,“決策數(shù)據(jù)庫”中的數(shù)據(jù)來源于“業(yè)務數(shù)據(jù)庫”。</p><p> 11)任意業(yè)務流程中應考慮創(chuàng)建審核記賬修改刪除沖紅結存(月結年結)的處理及滿足的條件。</p><
68、;p> 12)對于主明細表結構,設計對應的視圖將兩表連接用于查詢。</p><p> 13)禁止直接用編碼或名稱列表作為固定的過濾條件對數(shù)據(jù)進行查詢。應將包含此過濾條件的查詢做成特定的視圖;或在編碼表中加入屬性字段用于分類。</p><p> 14)對于業(yè)務數(shù)據(jù)表應設定一個“存檔標記列”,對于新增行或修改行設置該標志,以便將業(yè)務數(shù)據(jù)庫中的數(shù)據(jù)向決策數(shù)據(jù)庫復制時用以選擇需更新的數(shù)
69、據(jù)。當采用數(shù)據(jù)庫復制技術時,也希望設定此標志,以備用。此標志的設置可以由應用程序或觸發(fā)器來執(zhí)行。</p><p> 15)決策數(shù)據(jù)庫中應復制基本編碼表和輔助編碼表,以保持決策數(shù)據(jù)庫數(shù)據(jù)的完整性。</p><p> 16)同時采用多種分類方法:如果某一實體有多于一種的分類方法,或實體中的每個實例所屬的類的數(shù)量是不定的,這時實體表和分類表之間的關聯(lián)是多對多的,即一個實體屬于一個分類而同時也
70、屬于其它的分類。對于具有可多選的分類標志的表,與分類名稱列表之間存在多對多的關系,須按多對多的關系來處理。</p><p> 17)業(yè)務過程的記錄:如果一個業(yè)務表(或主表+明細表)依賴另外一個業(yè)務表的數(shù)據(jù),或在流程上一個業(yè)務表根據(jù)另一個業(yè)務表生成,則該業(yè)務表中應有一段記錄另一業(yè)務表對應記錄的標識。這樣的結構使得在流程上的所有數(shù)據(jù)形成一個鏈。</p><p> 18)分類字段的冗余:業(yè)務
71、數(shù)據(jù)表往往關聯(lián)許多的基本信息表,這些基本信息表中可能含有一些分類字段,而業(yè)務數(shù)據(jù)表的分類統(tǒng)計可能引用這些字段[9]。</p><p> 表4-1 ManagerLogin</p><p> ManagerLogin表(realname,username,password),用于管理員登錄時的身份認證,還可以對認證信息進行查詢、修改、添加和刪除</p><p>
72、 表4-2 MessageContent</p><p> MessageContent表(SourceNumber, Content, Time),用于描述短信的屬性。</p><p> 表4-3 MessageSaved</p><p> PrepareredMessage表(SourceNumber, Type, Content, Time ),用
73、于存儲接收與發(fā)送的短信。</p><p> 表4-4 MessageReceived</p><p> MessageReceived表(PhoneNum, Smstext, Smsdate, IsRead ),用來記錄所有接收的短信信息的數(shù)據(jù)表,以便查看。</p><p> 表4-5 MessageSend</p><p> M
74、essageSend表(Telphone, Smstext, Smsdate ),用來記錄所有發(fā)出的短信信息的數(shù)據(jù)表。</p><p> 表4-6 RecMessage</p><p> RecMessage表(Source Number, Message Content, Flag, Time),用于實現(xiàn)短信的回收功能。</p><p> 表4-7 Hi
75、story Message</p><p> History Message表 ( ID, Source Number, Message Content, Recsed State, SucedState, Flag, Time) ,用于記錄短信歷史信息,其中包括用戶的手機號和短信內容,以及短信的收發(fā)狀態(tài)和系統(tǒng)對短信的操作狀態(tài)。</p><p> 表4-8 Recycle</p
76、><p> Recycle表(Source Number, Message Content, Time),用于實現(xiàn)回收站的功能,刪除的歷史記錄將記錄在該表中。</p><p> 在ASP.NET中, 數(shù)據(jù)庫的訪問可通過ADO.NET模型來實現(xiàn),ADO.NET模型有兩個很重要的特性:一是可編程性, 它采用類型化的操作對象,程序員可以對自己定義的對象進行編程,更好地描述業(yè)務對象,使得其他用戶更
77、能容易理解。二是互操作性,它的這種特性體現(xiàn)在運用DataSet(數(shù)據(jù)集)上,一個數(shù)據(jù)集可以包含任意多個數(shù)據(jù)表,數(shù)據(jù)集組成了一個非連接數(shù)據(jù)庫數(shù)據(jù)視圖,這種非連接的結構體系使得只有在讀寫數(shù)據(jù)庫時才需要使用數(shù)據(jù)庫服務器資源,因而提供了更好的可伸縮性。在ADO.NET中,數(shù)據(jù)訪問是使用XML在組件間傳送數(shù)據(jù)集的,只要組件具有處理XML格式的能力都可以發(fā)送或者接收數(shù)據(jù)集,由于DataSet固有的序列化格式為 XML,所以它在以遠程方式向XML W
78、eb Services發(fā)送和接收數(shù)據(jù)時成為首選。</p><p> 以身份驗證模塊為例, 數(shù)據(jù)庫連接的步驟如下:</p><p><b> 1.導入命名空間</b></p><p> using System.Configuration;</p><p> using System.Data.SqlClient;
79、</p><p><b> 2.設定連接字符串</b></p><p> string myConn =ConfigurationSettings.AppSettings ["Connection-String"];</p><p> string mySQLstr2="select * from Manag
80、erLogin";</p><p> 在web.config的配置文件中的<configuration></configuration>標記中加入<appSettings> <add key="ConnectionString" value="server=localhost;uid=sa;pwd=sa;database=smmd
81、b"/> </appSettings>,表明連接的服務器名, 數(shù)據(jù)庫名及其用戶名和密碼。</p><p> 3.用connection對象連接數(shù)據(jù)庫</p><p> SqlConnection myConnection=new SqlConnection(myConn);</p><p> myConnection.Open();
82、</p><p> 4.填充DataSet</p><p> SqlDataAdapter myDataAdapter</p><p> =new SqlDataAdapter(mySQLstr2,myConnection);</p><p> DataSet myDS=new DataSet();</p><p&
83、gt; myDataAdapter.Fill(myDS,"ManagerLogin");</p><p> DataGrid1.DataSource=myD2;</p><p> DataGrid1.DataBind();</p><p> DataAdapter對象是DataSet和數(shù)據(jù)存儲之間的橋梁, 它是通過Fill方法把數(shù)據(jù)添加到
84、 DataSet中, 再通過將DataGrid對象的數(shù)據(jù)源指向該DataSet進行數(shù)據(jù)綁定就可以在DataGrid中顯示ManagerLogin表的內容[10] [11]。</p><p><b> 5 系統(tǒng)實現(xiàn)</b></p><p> 通信控制軟件是整個系統(tǒng)實現(xiàn)的關鍵,本部分主要根據(jù)平臺的核心模塊實現(xiàn)進行描述,因為涉及的只是調度和訪問功能因此提供的只有說明和
85、源代碼,而沒有界面作為支撐。最后給出整個平臺的實現(xiàn)功能和界面描述。對于設備驅動采用的VC++6作為開發(fā)工具,因此主要以流程圖的方式進行描述。而設備管理、任務引擎和接口引擎等模塊采用.NET平臺作為開發(fā)工具,因此主要以類圖的方式進行描述。</p><p> 5.1 設備驅動實現(xiàn)</p><p> 本部分主要描述Modem設備類的驅動模塊實現(xiàn),用Modem的實現(xiàn)可以具有代表性,因為它不僅
86、是實際設備,而且包括了底層短信格式的定義。</p><p> 5.1.1 打開及關閉串口的操作</p><p> 由圖可看出,通過串口通信向設備發(fā)送指令用以實現(xiàn)設備驅動。因此,首先調用OpenComm,然后通過Open方法啟動讀寫線程監(jiān)控串口通信,從而實現(xiàn)異步操作。</p><p> 關閉串口的方法也是通過調用Close方法實現(xiàn)對線程的銷毀和串口的關閉。&l
87、t;/p><p> 圖 5-1 串口控制流程</p><p> 5.1.2 收發(fā)短信的操作</p><p> 圖 5-2 收發(fā)短信流程</p><p> 由圖可以看出,對于發(fā)送短信數(shù)據(jù):通過應用程序調用的SendMsg函數(shù)提交短信數(shù)據(jù);給CSmsModem的PackageSmsMessage方法將信息打包成AT指令形式,再將其添加到CM
88、odemCommand的一個命令隊列當中;啟動一個ModemWrite線程將隊列中的AT指令發(fā)給Modem設備;監(jiān)聽Modem設備的線程ModemRead將發(fā)送結果通過OnSendMsg事件提交給應用程序[12]。</p><p> 對于短信接收:ModemRead線程將數(shù)據(jù)讀出;CSmsBuffer將數(shù)據(jù)解包并通過OnReceiveMsg事件提交給應用程序,應用程序通過掉用Readmsg方法進行數(shù)據(jù)獲取。&l
89、t;/p><p> 5.1.3 實現(xiàn)控件</p><p> 函數(shù)說明:打開屬性comfort指定的串口。</p><p> 返回值:0表示打開串口成功,否則打開串口失敗,屬性comfort指定的串口可能不存在或被別的程序使用。void CloseCommQ:</p><p> 函數(shù)說明:關閉串口。</p><p>
90、; 返回值:無short SendMsg(BSTR phonenumber, BSTR msg):</p><p> 函數(shù)說明:發(fā)送短信,只能向一個號碼發(fā)送。</p><p> 參數(shù)說明:phonenumber是對方的電話號碼,msg是要發(fā)送的內容。</p><p> 返回值:返回該短信的序號(開始時短信序號為1,每調用一次SendMsg短信的序號自動加一)
91、,函數(shù)調用成功返回該序號,函數(shù)調用失敗時(比如串口沒有打開就調用該函數(shù))返回該序號的負數(shù)。因此,返回值>0調用成功,否則函數(shù)調用失敗。</p><p> 該短信是否成功發(fā)送出去應在OnSendMsg事件中調用GetIndexOfLastSnd來獲得。short SendMessageMultiple(BSTR phonenumbers, BSTR msg):</p><p> 函
92、數(shù)說明:群發(fā)短信,可以向多個號碼發(fā)送,號碼間以“,”號分隔。</p><p> 參數(shù)說明:phonenumbers是接收方的電話號碼列表(電話號碼間以“,”號分隔),msg是要發(fā)送的內容。</p><p> 返回值:0表示函數(shù)調用成功,否則調用失敗。該群發(fā)短信函數(shù)不增加短信序號,發(fā)送完成后也不會產(chǎn)生OnSendMsg事件,即該函數(shù)不報告發(fā)送狀態(tài)。short SendMessageMul
93、tiMedia(BSTR phonenumber, BSTR MSmsg, long nCount):</p><p> 函數(shù)說明:發(fā)送彩信,該函數(shù)暫未編寫。</p><p> 參數(shù)說明:phonenumber是對方的電話號碼,MSmsg彩信內容,nCount是要發(fā)送的字節(jié)數(shù)。</p><p> 返回值:0表示函數(shù)調用成功,否則調用失敗。short ReadM
94、sg(BSTR* strSCMA, BSTR* strContent, BSTR* strPhoneNumber,BSTR* strTime):</p><p> 函數(shù)說明:接收短信,當產(chǎn)生OnReceiveMsg事件時調用該函數(shù)獲得短信。</p><p> 參數(shù)說明:strSCMA是短信中心號碼,strConter是短信內容,strPhoneNumber是發(fā)送方號碼,strTime是
95、接收時間串(如:"07-06-11 15:20:12")</p><p> 返回值:0表示函數(shù)調用成功,獲得了短信信息,否則沒有讀到短信,獲得的短信信息無意義。long GetIndexOfLastSndQ:</p><p> 函數(shù)說明:該函數(shù)報告SendMsg發(fā)送的短信是否發(fā)送成功,當產(chǎn)生OnSendMsg事件時調用該函數(shù)獲得短信發(fā)送報告。</p>
96、<p> 返回值:返回短信的序號(開始時短信序號為1,每調用一次SendMsg短信的序號自動加一),序號大于0時表示該序號的短信發(fā)送成功,序號為負數(shù)時,表示該序號的短信發(fā)送失敗。void GetSimCardCapacity (int* Total, int* Used):</p><p> 函數(shù)說明:獲得SIM卡短信總容量及被使用的數(shù)量。</p><p> 函數(shù)參數(shù):To
97、tal獲得SIM卡短信容量,Used獲得當前存儲的短信條數(shù)。</p><p> 返回值:無。控件事件OnReceiveMsg:</p><p> 說明:當有短信到達時觸發(fā)該事件,在該事件中調用ReadMsg函數(shù)獲取短信內容。OnSendMsg:</p><p> 說明:當收到短信發(fā)送報告后觸發(fā)該事件,在該事件中調用GetIndexOfT.astSnd函數(shù)獲得相
98、應短信的發(fā)送報告[13]。</p><p> 5.2 設備管理模塊實現(xiàn)</p><p> 本部分主要描述設備管理模塊的具體實現(xiàn)思路和數(shù)據(jù)結構描述,而主要代碼如下:</p><p> public class DeviceMgr</p><p><b> {</b></p><p> /
99、//<summary></p><p> ///屬性定義,用來設置對象的一些常用屬性</p><p> ///</summary></p><p> private static DeviceMgr m}Obj =null;</p><p> private static bool m bLoadFlag=fa
100、lse;</p><p> private static bool m bStartFlag=false;</p><p> private static AutoResetEvent asyncMonitorIsDone;</p><p> private static AutoResetEvent asyncWorksAreDone;</p>
101、<p> private static AutoResetEvent asyncOpsAreDone;</p><p> private static SMSOperation.</p><p> private static log4net.ILog</p><p> private static DeviceWrapper</p>
102、<p> DeviceManager.DAO.SMSDAO smsDAO;</p><p><b> logger;</b></p><p> deviceWrapper;</p><p> public DeviceMgr()</p><p><b> {</b></
103、p><p><b> //</b></p><p> //TODD:在此處添加構造函數(shù)邏輯</p><p><b> //</b></p><p> logger=log4net. LogManager. GetLogger ("SMSDevice"):</p>
104、<p> log4net. Config. XmlConfigurator. Configure();</p><p> m}Ob j=this;</p><p> asyncOpsAreDone=new AutoResetEvent(false);</p><p> asyncMonitorIsDone=new AutoResetEvent(f
105、alse);</p><p> asyncWorksAreDone=new AutoResetEvent(false);</p><p><b> smsDAO=</b></p><p> (SMSOperation. DeviceManager. DAO. SMSDAO)SMSOperation. DeviceManager. DAO
106、.DAOFactory.getDAOInstance("SMS");</p><p> deviceWrapper=new DeviceWrapper():</p><p> public static DeviceMgr getObjInstance()</p><p><b> {</b></p>&
107、lt;p> i f (m}Ob j==null)</p><p> return new DeviceMgr();</p><p><b> else</b></p><p> return m}Ob j;</p><p><b> <summary></b></p
108、><p> 根據(jù)數(shù)據(jù)庫配置,裝載所有設備,現(xiàn)在有短信貓和信息機兩種設備在數(shù)據(jù)庫中分別以1代表短信貓,2代表信息機[14]。</p><p> </summary></p><p><b> ////////</b></p><p><b> l/z////</b></p>
109、<p> public void loadAllDevice()</p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p><p> if(!m bLoadFlag)</p>
110、<p><b> {</b></p><p> m bLoadFlag=true;</p><p><b> }</b></p><p><b> }</b></p><p> catch(Exception e)</p><p>
111、; logger. Error ("loadAllDevice has an error"+e. ToString());</p><p><b> }</b></p><p> ///<summary></p><p> ///啟動設備工作,根據(jù)種類配置信息不同,啟動設備進行工作</p>
112、<p> ///</summary></p><p> public void startDeviceWork()</p><p><b> {</b></p><p><b> try</b></p><p><b> {</b></p&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于.net短信發(fā)送平臺設計與實現(xiàn)【文獻綜述】
- 基于.net短信發(fā)送平臺設計與實現(xiàn)【開題報告】
- 基于.net短信發(fā)送平臺的設計與實現(xiàn)【畢業(yè)設計】
- 基于.net人才招聘系統(tǒng)的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 短信發(fā)送軟件的設計與實現(xiàn)【開題報告】
- 基于ajax的社交網(wǎng)站交互平臺設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 基于特征內容的短信消息過濾系統(tǒng)設計【畢業(yè)設計+開題報告+文獻綜述】
- 基于c#平臺的短信發(fā)送軟件設計[開題報告]
- 基于java平臺的圖片秘書網(wǎng)站的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- gps儀的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- linux shell的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 基于java平臺的校園圖書交易網(wǎng)站的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 泛洪攻擊設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 基于android平臺的手機游戲開發(fā)【畢業(yè)設計+開題報告+文獻綜述】
- 網(wǎng)絡考試系統(tǒng)的設計與實現(xiàn)【開題報告+文獻綜述+畢業(yè)設計】
- 基于vs.net的教學論壇的開發(fā)【畢業(yè)設計+開題報告+文獻綜述】
- 基于lamp的網(wǎng)上書店的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 基于java的下載工具的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 基于fpga的差錯控制編碼的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
- 基于java的“博客”論壇系統(tǒng)的設計與實現(xiàn)【畢業(yè)設計+開題報告+文獻綜述】
評論
0/150
提交評論