• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            franksunny的個人技術空間
            獲得人生中的成功需要的專注與堅持不懈多過天才與機會。 ——C.W. Wendte

             

            EasyDgm是一個用于攔截短消息,發送短信的插件代碼。用該插件攔截短信沒有提示音,發送也不提示用戶。但是本身該代碼是老外開發的,只是針對8位編碼的字符,沒有根據我們中文的編碼來做成完全Unicode版本的,為此以下改寫就是實現Unicode字符串的發送。

            1、  修改DatagramService工程中的代碼,將其內用到的8位描述符修改為16位,具體修改的描述羅列如下:

            //修改前內容

                   IMPORT_C static CDatagram* NewL(TDesC8& aBuf);

                   IMPORT_C static CDatagram* NewL(const TDesC8& aBuf,const TDesC8& aAddress);              IMPORT_C virtual const TDesC8& GetData();

                   IMPORT_C virtual void  SetDataL(const TDesC8& aData);

                   void ConstructL(const TDesC8& aBuf);

                   HBufC8* iData;

            //修改后內容

                   IMPORT_C static CDatagram* NewL(TDesC& aBuf);

                   IMPORT_C static CDatagram* NewL(const TDesC& aBuf, const TDesC8& aAddress);              IMPORT_C virtual const TDesC& GetData();

                   IMPORT_C virtual void  SetDataL(const TDesC& aData);

                   void ConstructL(const TDesC& aBuf);

                   HBufC* iData;

            2、  修改SMSDatagramService工程中CSMSSender類的代碼,將其內用到的8位描述符修改為16位,具體修改的描述羅列如下:

            //修改前

            void CreateSMSMessageL(const TDesC8& aText, const TDesC8& aAddress);

            void SendSMSL(const TDesC8& aText, const TDesC8& aAddress, TRequestStatus& aStatus);

            //修改后

            void CreateSMSMessageL(const TDesC& aText, const TDesC8& aAddress);

            void SendSMSL(const TDesC& aText, const TDesC8& aAddress, TRequestStatus& aStatus);

            3、  修改SMSDatagramService工程中CSMSSender類內創建短信的函數CreateSMSMessageL,將原來的代碼

            smsSettings.SetAlphabet(TSmsDataCodingScheme::ESmsAlphabet7Bit);

            改成適合unicode的通道值

            smsSettings.SetAlphabet(TSmsDataCodingScheme::ESmsAlphabetUCS2);

            4、  刪除原有的def,重新為兩份工程定稿dll,這個具體參看如何編寫dll

            以上操作已經將EasyDgm插件修改成適合Unicode的代碼類型了,當然該代碼中還有可以進行優化的部分,在這里就不多做贅述。

            具體使用的時候,可以參考S60v3_EasyDgmTest的例子,一般都是將里面的兩份代碼smsdatagramreceiver.cppsmsdatagramsender.cpp直接拿來用的,但是也要改成16位描述符。

            考慮到有些網友問我要修改后的EasyDgm代碼,先特給出下載地址 http://m.shnenglu.com/Files/franksunny/EasyDgm.rar

            posted on 2008-05-16 20:12 frank.sunny 閱讀(2591) 評論(9)  編輯 收藏 引用 所屬分類: symbian 開發

            FeedBack:
            # re: 如何通過EasyDgm發送中文短信(unicode)[未登錄]
            2008-06-23 01:25 | albert
            你好, 想問一下, S60v3_EasyDgm 的那個正確版本的例子,您能告訴我從哪里獲得嗎? 謝謝。  回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)[未登錄]
            2008-06-23 01:27 | albert
            我的郵箱是 ultra_albert@yahoo.com.cn . 謝謝。保持交流。   回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)
            2008-06-23 09:08 | frank.sunny
            代碼已發郵箱,望查收  回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)
            2008-07-25 05:06 | selwin
            能給一份EasyDgm代碼嗎?謝謝。you_chun_feng@tom.com  回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)
            2008-07-25 08:21 | frank.sunny
            @selwin
            看你估計是熬夜的人,沒有看到文中的鏈接地址吧
            以前文中沒有給出下載才要發送,后來考慮大家需要,已經添加下載附件了  回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)
            2009-03-10 14:01 | sbian
            能給一份EasyDgm代碼嗎?謝謝。bgmail@vip.qq.com  回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)
            2009-09-11 15:23 | peng_LX
            franksunny 哥,能不能發一份EasyDgm代碼給我,謝謝。
            我的郵箱是547742434@qq.com  回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)
            2009-09-11 15:31 | frank.sunny
            @peng_LX
            不是可以下載嗎?在文檔末尾,下次不理睬這種行為了  回復  更多評論
              
            # re: 如何通過EasyDgm發送中文短信(unicode)
            2010-03-24 17:55 | 向翔
            前三步都按照你說的做的 第四步不知道這個DEF怎么刪 只把DLL文件刪了
            重新編譯了一下
            如何編譯了S60v3_EasyDgmTest也沒問題
            可是在用GCCE編譯生成SIS的時刻卻報錯 沒有生成DatagramTest.exe這個文件
            請問一下這是怎么回事了 麻煩幫忙解決一下了  回復  更多評論
              

            常用鏈接

            留言簿(13)

            隨筆分類

            個人其它博客

            基礎知識鏈接

            最新評論

            閱讀排行榜

            評論排行榜

            国内高清久久久久久| 91麻豆国产精品91久久久| 狠狠色狠狠色综合久久| 97久久国产露脸精品国产| 亚洲国产精品久久电影欧美| 麻豆精品久久精品色综合| 伊人久久精品线影院| 伊人久久成人成综合网222| 婷婷久久久亚洲欧洲日产国码AV| 久久99久久99小草精品免视看| 久久久久久久国产免费看| 色综合久久中文字幕无码| 日韩一区二区久久久久久| 久久久久se色偷偷亚洲精品av | 996久久国产精品线观看| 伊人色综合久久天天| 九九精品久久久久久噜噜| 青青青国产精品国产精品久久久久 | 四虎国产精品成人免费久久| 亚洲av日韩精品久久久久久a| 99久久国产热无码精品免费久久久久| 伊人久久五月天| 94久久国产乱子伦精品免费| 久久夜色精品国产网站| 欧美成人免费观看久久| 久久久无码精品亚洲日韩软件| 久久99国产综合精品免费| 久久成人国产精品免费软件| 久久久久无码国产精品不卡| 狠狠色综合久久久久尤物| 久久99中文字幕久久| 国产成人无码久久久精品一| 亚洲愉拍99热成人精品热久久 | 伊人久久大香线蕉无码麻豆| 久久嫩草影院免费看夜色| 97超级碰碰碰碰久久久久| 成人亚洲欧美久久久久| 久久青青草原国产精品免费 | 亚洲国产成人久久综合碰碰动漫3d| 久久精品蜜芽亚洲国产AV| 一本久久知道综合久久|