C#寫手機軟體

來源:互聯網
上載者:User

第一次花時間寫點東西,以前一直看大家的。

最近接觸到了短訊息的編程, 相信有不少兄弟已經實現了,我僅僅寫一下自己的心得。

首先查了csdn上的文章,其中有不少的廣告,沒相信他們:)
看了大家推薦的天極上面那個蠶蛹寫的經典程式,收穫頗大
以那個程式為核心,開始嘗試。中間得到了egpscar的熱情回複,特此感謝。

蠶蛹那個是不能不看的入門教程啊,一定要看
http://soft.yesky.com/SoftChannel/72342380468109312/20040523/1800310.shtml

還有 popcorn(米花) 提供的 http://0926.net/archive/sms.htm
還有一個at指令的 http://www.cetinet.com/download/list.asp?id=179

在蠶蛹樣本程式的基礎上, 我邊調試邊增加了一些控制,基本上可以達到每小時800條。
我用的是win form,暫時還沒有用windowns service來做。

原始碼
http://bbs.gzeasy.com/index.php?showtopic=275782  沒有地方上傳,就借用了gz的bbs

我增加了
1 多執行緒,以保證可以同時回饋com口讀出的內容, 而不是等到讀一個at命令返回結束才顯示結果
2 讀com口增加重試, 50ms讀一次
3 讀com口增加處理buffer,
因為發一個命令給com口以後, 然後讀com口擷取返回資訊, 注意com口的資料讀走就不儲存在com口上了. 下次讀就是新的了,50ms讀一次,等下一次讀或者讀n次放到buffer中,才組成一個符合協議的字串, 在這上我花了一點時間才搞清楚的, 讓高手見笑了。這樣就ok了.

我用我的西門子3518i手機, 然後在賣手機配件的那裡買了一個資料線30塊, 就開始調試了

這裡說明一下, 這個程式有日誌記錄的, 可以在介面上看到兩個資料框, 黑底綠字的是發送log, 白底黑字的是bufferlog。記錄啥內容呢, 就是本次發送失敗還是成功,如果失敗,還會重新發的. 發送的內容在資料庫裡,用的是sql, 表在database目錄下可以找到建立的檔案, 一個副檔名為sql的.

我發了200條, 看日誌重發了若干條, 接受端多收了2條. 不是很理想是吧, 而且每小時估計只有400~600條.

後來我打算買一個gsm modem, 主要原因是充電的問題,因為我資料線和充電的線用的介面是一個, 也不能老換電池呀. 插曲(後來蠶蛹告訴我說手機可以同時充電和連資料線的,不過我想可能需要有硬體支援, 再說後來裝置買好了,我也就沒嘗試)

gsm modem這個東西上海不知道哪裡有賣的,反正我是沒找到, 然後在一些賣這種dd的網站論壇上詢價, 主要是北京和福建廣東, 就是我們經常收到你中獎了的,現在大家都知道是福建和廣東的騙子發的訊息,我估計他們用的就是這類裝置不過模組更多而已, 這裡沒有說某地區人壞話的意思.呵呵

有一家給了我報價, 我不敢馬上買,主要擔心這個程式不能用, 我就讓他幫我測試,結果好幾天沒有回複, 等待之中www.sendsms.com 的一個小夥給我來信說他們也賣, 我說那你幫我試試看吧, 這小夥沒裝.net, 竟然連windows update都沒用過:(, 只好我傳給他一個framework, 他辛苦幫我試了一下午, 結果是好用的. 這個小夥還是蠻主動熱情的, 所以這裡給想買專業裝置的兄弟們提供一個去處. 算是對他敬業精神的鼓勵吧,呵呵

收到裝置以後, 我馬上測試100條, 用了7分鐘不到一點, 這樣看一小時發800條沒有問題的,而且發送端日誌沒有失敗和重發, 接收的手機上也全部收到,沒有重複.

這個裝置和手機的差別給大家分析一下
My Phone的連線速度是19200bps,而這個gsm modem(wavecom的)只有9600
但是它主要是穩定和反應速度快, 像My Phone大概要等稍微長一點時間才會讀出來ok還是error,這個modem很快的. 我重複讀一次就在日誌中列印一個點, 手機平均要打7,8個點,而modem大概4,5個點,而且因為手機連續發好像容易出現error, 然後重新發,雖然最後也能發成功,但是時間就浪費了.

好了基本就是這樣,前後用了大概兩個星期不到, 要是沒有蠶蛹的代碼, 我不知道要如何下手呢, 所以也提供My Code給大家參考(在徵得蠶蛹的同意以後), 希望能節省需要這個的兄弟們的時間, 沒有啥注釋,如有疑問和探討可以寫信給我guanfei@hotmail.com,要中文主題的,否則垃圾郵件太多我容易忽視的。下一步打算做讀訊息.估計也不會太難了.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.