青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Benjamin

靜以修身,儉以養德,非澹薄無以明志,非寧靜無以致遠。
隨筆 - 398, 文章 - 0, 評論 - 196, 引用 - 0
數據加載中……

Wince及mobile常用代碼(續)

一、怎樣將已安裝好的應用程序卸載:
用unload.exe,
szUninstallBuf這個參數必須和注冊表 HLM\SOFTWARE\APPS\下的對應應用的名稱一致。

有個前提,使用這個必須是在cab中沒有指定 nouninstall這個參數

PROCESS_INFORMATION stProgressInfo;
if ( CreateProcess(_T("\\Windows\\unload.exe"), szUninstallBuf, NULL, NULL, NULL, 0, NULL, NULL, NULL, &stProgressInfo) )

二、屏蔽talk鍵(打電話的那個鍵):向窗口發送SHCMBM_OVERRIDEKEY消息,在WM_HOTKEY中進行處理。
參考SDK自帶的Sample,位于“Windows Mobile 6 SDK\Samples\Common\CPP\Win32\FullScreen”目錄。該例子演示了如何在Windows Mobile上隱藏taskbar和softkey,進行全屏顯示。其中,退出全屏的功能,采用softkey按鈕來實現。而具體的方式,就是向窗口發送SHCMBM_OVERRIDEKEY消息,在WM_HOTKEY中,加入用戶自己的應用。以該工程為例,我們進行修改,加入“按Talk按鍵退出全屏”這個功能,而不彈出撥號界面。
1.在SetSoftkeyBarForFullScreen函數中,加入消息發送函數:

   // Override/Undo softkeys for key press notifications, so we can

   // display taskbar & softkeys on SK1/SK2 press in full screen.

    DWORD dwBits;

    dwBits = bFullScreen

                ? SHMBOF_NODEFAULT | SHMBOF_NOTIFY

                : 0;

    SendMessage(hwndSoftKeyBar,

                SHCMBM_OVERRIDEKEY,

                VK_TSOFT1,

                MAKELPARAM(SHMBOF_NODEFAULT | SHMBOF_NOTIFY, dwBits));

    SendMessage(hwndSoftKeyBar,

                SHCMBM_OVERRIDEKEY,

                VK_TSOFT2,

                MAKELPARAM(SHMBOF_NODEFAULT | SHMBOF_NOTIFY, dwBits));

    //加入的消息發送函數

     SendMessage(hwndSoftKeyBar,

                SHCMBM_OVERRIDEKEY,

                VK_TTALK,

                MAKELPARAM(SHMBOF_NODEFAULT | SHMBOF_NOTIFY, dwBits));

 

2.在CALLBACK DialogProc(…)函數的WM_HOTKEY中,加入VK_TTALK鍵的處理:

   caseVK_TTALK:

        {

             // if we are in full screen mode we want to exit

             // when the user presses a softkey.

             if(g_bFullScreen)

             {   

                  SendMessage(GetDlgItem(hWnd,IDC_EDIT), WM_SETTEXT, 0, (LPARAM)L"[TALKkey] Exiting Full Screen");

                  FullScreen(hWnd, FALSE);

              }

          }

   break;
有關參考如下:

WM_HOTKEY:http://msdn.microsoft.com/en-us/library/aa453868.aspx

SHCMBM_OVERRIDEKEY:http://msdn.microsoft.com/en-us/library/aa454997.aspx

三、Windows Mobile上的無線網絡接入點掃描:codeproject上有個Wifi AP掃描程序,稱為:Wifi scanner + custom MFC controls。用它能夠掃描當前的無線環境,發現周圍的AP接入點,顯示他們的名字、MAC地址、信號強度(RSSI)、Wifi信道以及是否需要密碼等信息。
源碼的運行設備是Pocket PC 2003se,要運行在window mobile平臺,要在編譯選項中Configuration Manger中選中wm設備,Active solution platform

選NEW,在彈出的窗口中,將new platform選擇為windows mobile 的sdk,最后在Project->Properties中,選擇Linker中的Command Line,在Additional Option中,將“machine:ARM”改為“machine:THUBM”。運行效果圖如下:

Download demo project - 97.6 Kb
Download source - 90.8 Kb

四、短信相關的AT指令:
     AT+CMGC:發出一條短消息

    AT+CMGD:刪除SIM卡內存的短消息

    AT+CMGF:選擇短消息信息格式:0-PDU;1-文本

    AT+CMGL:列出SIM卡中的短消息PDU/text: 0/"REC UNREAD"-未讀,1/"REC READ"-已讀,2/"STO UNSENT"-待發,3/"STO SENT"-已發,

                4/"ALL"-全部的

    AT+CMGR:讀短消息

    AT+CMGS:發送短消息

    AT+CMGW :向SIM內存中寫入待發的短消息

    AT+CMSS:從SIM卡內存中發送短消息

    AT+CNMI:顯示新收到的短消息

    AT+CPMS:選擇短消息內存

    AT+CSCA:短消息中心地址

    AT+CSCB :選擇蜂窩廣播消息

    AT+CSMP:設置短消息文本模式參數

    AT+CSMS:選擇短消息服務
相關代碼:
初始化短信模式設置的時候,可以使用:

//set AT+CMGF=1+回車換行

m_serialPort2.Write(new char[] { 'A', 'T', '+', 'C', 'M', 'G', 'F', '=', '1' }, 0, 9);

m_serialPort2.Write(new byte[] { 0x0D }, 0, 1);

m_serialPort2.Write(new byte[] { 0x0A }, 0, 1);


短信內容發送完畢必須以十六進制數0x1A結束,例如,發送短信時,先發送對方號碼,然后發送數據:

//發送text中輸入的對方手機號碼

stATCommand = "AT+CMGS=+86" + textBoxPhoneNumber.Text;

btATCommand = stATCommand.ToCharArray();

m_serialPort2.Write(btATCommand, 0, 22);

m_serialPort2.Write(new byte[] { 0x0D }, 0, 1);

m_serialPort2.Write(new byte[] { 0x0A }, 0, 1);

Thread.Sleep(15);

m_serialPort2.Write(new char[] { 'H', 'e', 'l', 'l', 'o'}, 0, 5);

//set SMS end symbol

m_serialPort2.Write(new byte[] { 0x1A }, 0, 1);

 

//發送text中輸入的對方手機號碼

stATCommand = "AT+CMGS=+86" + textBoxPhoneNumber.Text;

btATCommand = stATCommand.ToCharArray();

m_serialPort2.Write(btATCommand, 0, 22);

m_serialPort2.Write(new byte[] { 0x0D }, 0, 1);

m_serialPort2.Write(new byte[] { 0x0A }, 0, 1);

Thread.Sleep(15);

m_serialPort2.Write(new char[] { 'H', 'e', 'l', 'l', 'o'}, 0, 5);

//set SMS end symbol

m_serialPort2.Write(new byte[] { 0x1A }, 0, 1);

五、怎樣通過CMPP短信網關下發wap push ,相對于下發普通短信,有兩個地方不同。
  1、CMPP_SUBMIT消息包的部分參數值改變。具體是:  
Msg_Fmt = 4(表示消息內容是二進制),
      TP_pid = 0;
      TP_udhi = 1;
2、字段Msg_Content的內容是二進制數字,有特定的組合方式。格式解析起來,就是所謂的
      “壓縮后的XML“,即WBXML,一共有7個部分,把每個部分的二進制碼按順序組合起來填入
      Msg_Content字段,當做普通短信下發即可。代碼大概如下:
 
  char szWapPushHeader1[12] = {0x0B, 0x05, 0x04, 0x0B, 0x84, 0x23, 0xF0, 0x00, 0x03,
                               0x03, 0x01, 0x01};
  char szWapPushHeader2[9] = {0x29, 0x06, 0x06, 0x03, 0xAE, 0x81, 0xEA, 0x8D, 0xCA};
  char szWapPushIndicator[8] = {0x02, 0x05, 0x6A, 0x00, 0x45, 0xC6,0x0C, 0x03};
  char szWapPushDisplayTextHeader[3] = {0x00, 0x01, 0x03};
  char szEndOfWapPush[3] = {0x00, 0x01, 0x01};
 
  //以上數字串是什么意思,估計有幾個說明可以參考下, 又是前人經驗:
  //0B WAP PUSH頭部的總長度
  //05040B8423F0表示接下來是一個WAP PUSH
  //00 表示是Concatenated Short Messages
  //03 長度
  //03 reference number
  //01 表示分成1個短信發送
  //01 當前包的序號
  //這個并不不影響功能的樣子。好象只需要知道分幾條短信和
  //序號發就可以了。以上每個部分,也有其他可以通過測試的不同的串值,目前只測了這種
  //常見的值。
  //以下兩個字串就是需要自己填寫的了:
  //szWapPushUrl:wap push的目的鏈接,費盡心機不就是想把這個發出去嘛。要求是"去除了
  //http://前綴的UTF8編碼的Url地址"的二進制編碼。現在是小測試,直接寫上值吧,否則應
  //該是經過編碼轉化的。以下url內容是"wap.sina.com.cn"
  char szWapPushUrl[12]  = {0x77,0x61,0x70,0x2E,0x73,0x69,0x6e,0x61,0x2e,0x63,0x6f,0x6d};
 
  //這個,就是想在手機上顯示的關于這個URL的文字說明了,在我的手機上顯示成該wap push
  //的標題.也同樣是"UTF8編碼的二進制"內容是"好好學習"
  char szMsg[12] = {0xE5,0xA5,0xBD,0xE5,0xA5,0xBD,0xE5,0xAD,0xA6,0xE4,0xB9,0xA0};
具體的實現代碼如下:
char szHex[1024];
  int iUrllen,iMsgLen,iLen;
  iUrllen = 12;
  iMsgLen = 12;
  memset(szHex, 0, sizeof(szHex));
  iLen = 0;
  memcpy(szHex, szWapPushHeader1, 12);
  iLen += 12;
  memcpy(szHex+iLen, szWapPushHeader2, 9);
  iLen += 9;
  memcpy(szHex+iLen, szWapPushIndicator, 8);
  iLen += 8;
  memcpy(szHex+iLen, szWapPushUrl, iUrllen);
  iLen += iUrllen;
  memcpy(szHex+iLen, szWapPushDisplayTextHeader, 3);
  iLen += 3;
  memcpy(szHex+iLen, szMsg, iMsgLen);
  iLen += iMsgLen;
  memcpy(szHex+iLen, szEndOfWapPush, 3);
  iLen += 3;
  Msg_Length = iLen;
  memcpy((char*)Msg_Content, szHex, Msg_Length);
 
  //把Msg_Content當普通短信下發就可以了。對于push很多地方是被運營商給屏蔽了。

六、Cookie文件格式,默認位置:默認位置是Windows\Profiles\Guest\Cookies,持久性cookie,有一個截止日期,都存儲在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders的注冊表項中指定的位置;
如果沒有到期日,會話cookie都存儲在內存中,并且只提供給創建它們的進程使用。
所以,要設置一個多個進程都可以使用的cookie,必須設置好到期日。
格式如下:
 cnt_uid_www
 fa565c5abe27b0eb1f0497
 csdn.net/
 1536
 560450176
 29956594
 2009325664
 29943116
 *
 其中
 第1行為Cookie名稱;
 第2行是Cookie的值;
 第3行是Cookie所屬站點的地址;
 第4行是個標記值;
 第5行為超時時間的低位(Cardinal/DWORD);
 第6行為超時時間的高位;
 第7行為創建時間的低位;
 第8行為創建時間的高位;
 第9行固定為 * ,表示一節的結束。
 一個文件可能包含有多個節,按上面的格式循環即可。
 
也可以用程序來寫cookie,當打開相關網頁時,網頁可自動識別,雖然這樣的實際應用并不是很常見。
 InternetSetCookie(L"csdn.net/", L"cnt_uid_www", L"fa565c5abe27b0eb1f0497;expires=Sat,10-Jul-2010 00:00:00 GMT");
 如上,“expires=Sat,10-Jul-2010 00:00:00 GMT”指定了cookie的有效期限。
注冊表位置:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer \Shell Folders,下面的
Cache、Cookies、History三個子鍵路徑中的“Windows\”全部換成“Storage Card\”即可。系統會自動在SD卡上創建自己的路徑。
再將Windows目錄下的profiles整個文件夾刪掉,文件目錄已經建立到SD卡上的 \Storage Card\profiles了,

posted on 2010-04-10 16:52 Benjamin 閱讀(1299) 評論(0)  編輯 收藏 引用 所屬分類: PDA/PPC開發

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久精品国产清自在天天线| 亚洲精品综合久久中文字幕| 欧美在线首页| 亚洲福利视频在线| 性色av一区二区三区红粉影视| 久久久久一区二区三区四区| 亚洲欧洲一级| 久久亚洲精品网站| 国产区在线观看成人精品| 一本大道久久精品懂色aⅴ| 美女国产精品| 欧美一级理论性理论a| 国产精品久线观看视频| 一区二区三区视频观看| 亚洲国产精品成人一区二区| 久久久水蜜桃av免费网站| 国产亚洲毛片在线| 欧美资源在线观看| 久久综合中文色婷婷| 悠悠资源网亚洲青| 裸体丰满少妇做受久久99精品 | 亚洲美女在线一区| 欧美不卡激情三级在线观看| 久久精品av麻豆的观看方式| 国产欧美一区二区三区久久人妖 | 亚洲国产精品久久久久| 裸体歌舞表演一区二区| 欧美色综合天天久久综合精品| 亚洲经典视频在线观看| 亚洲第一页中文字幕| 国产精品裸体一区二区三区| 欧美激情va永久在线播放| 老司机67194精品线观看| 亚洲影音先锋| 欧美一区=区| 国产精品99久久久久久久vr | 亚洲欧美色一区| 国产精品日日摸夜夜摸av| 欧美一级午夜免费电影| 欧美承认网站| 亚洲一区二区三区四区视频| 亚洲一区二区三区欧美| 狠狠色综合网| 亚洲电影免费| 曰韩精品一区二区| 久久精品99无色码中文字幕| 亚洲中无吗在线| 欧美日韩国产一级| 欧美亚洲免费在线| 欧美日韩在线精品一区二区三区| 性做久久久久久久免费看| 亚洲视频第一页| 99热免费精品在线观看| 9久re热视频在线精品| 国产精品久久久久久影视| 亚洲第一页中文字幕| 亚洲高清视频一区| 久久香蕉精品| 欧美国产日韩一二三区| 亚洲国产导航| 美国十次成人| 欧美一区二区黄色| 免费视频亚洲| 久久福利视频导航| 国产日韩免费| 一本大道久久精品懂色aⅴ| 一本一本久久a久久精品综合麻豆| 免费精品视频| 亚洲精品国精品久久99热一| 国产日韩欧美三区| 欧美夜福利tv在线| 麻豆av一区二区三区久久| 亚洲高清久久网| 欧美另类在线播放| 免费中文日韩| 夜夜精品视频一区二区| 欧美色播在线播放| 午夜精品亚洲| 亚洲欧洲av一区二区| 欧美黄色一级视频| 欧美国产日韩一区二区三区| 亚洲免费成人av电影| 欧美午夜a级限制福利片| 亚洲高清中文字幕| 亚洲视屏一区| 国产日本欧美一区二区| 久久另类ts人妖一区二区| 亚洲经典在线| 欧美一区二区三区在线看| 伊人久久亚洲美女图片| 欧美精品日韩综合在线| 亚洲人成网站色ww在线| 亚洲男人的天堂在线观看| 国产精品qvod| 久久免费黄色| 亚洲私拍自拍| 欧美一区二区三区免费观看| 在线观看一区视频| 老司机精品久久| 亚洲午夜成aⅴ人片| 欧美成人精品福利| 欧美亚洲在线视频| 亚洲精品社区| 欧美三级网址| 久久婷婷人人澡人人喊人人爽 | 午夜欧美理论片| 亚洲黄色免费电影| 国产模特精品视频久久久久| 亚洲永久免费观看| 亚洲黄网站在线观看| 久久久久国产一区二区三区| 国产一区二区三区观看| 欧美日韩日本国产亚洲在线| 久久久免费观看视频| 亚洲永久免费视频| 日韩一级欧洲| 久久电影一区| 亚洲在线视频观看| 一区二区三区蜜桃网| 亚洲国产网站| 伊人影院久久| 国产综合久久久久久| 亚洲图片欧美午夜| 欧美日韩另类一区| 免费观看30秒视频久久| 欧美亚洲一区二区在线| 一区二区三欧美| 欧美主播一区二区三区| 宅男噜噜噜66国产日韩在线观看| 亚洲国产精品va| 在线观看欧美亚洲| 韩国精品一区二区三区| 国产一区二区久久精品| 国产欧美精品日韩| 国产伦精品一区二区三区照片91| 欧美日韩一区二区三区在线| 欧美连裤袜在线视频| 欧美精品色综合| 欧美精彩视频一区二区三区| 欧美大尺度在线| 欧美大片在线观看一区二区| 麻豆久久精品| 欧美国产激情二区三区| 欧美精品久久99| 欧美日韩成人在线视频| 欧美日韩国产高清| 欧美视频在线观看免费| 国产精品另类一区| 国产欧美一区二区白浆黑人| 国产午夜精品久久久久久免费视| 国产色综合天天综合网| 伊人婷婷欧美激情| 91久久中文| 在线观看91精品国产入口| 亚洲福利av| aa亚洲婷婷| 午夜精品久久久久| 久久久福利视频| 欧美二区在线看| 久久夜色精品国产欧美乱极品| 亚洲一区二区三区四区五区黄 | 狠狠色狠狠色综合日日tαg| 一区二区三区在线视频播放| 国产女主播一区| 黄色成人91| 亚洲美女精品成人在线视频| 亚洲制服少妇| 免费不卡亚洲欧美| 亚洲美女淫视频| 午夜视黄欧洲亚洲| 欧美不卡视频一区发布| 国产精品久久久久9999高清| 欧美日韩中文字幕日韩欧美| 国产欧美欧洲在线观看| 亚洲片在线观看| 亚洲欧美一区二区原创| 免费视频久久| 亚洲午夜91| 欧美国产日本韩| 国产一区二区三区精品欧美日韩一区二区三区| 国产在线欧美| 亚洲香蕉在线观看| 欧美成人午夜激情视频| 亚洲永久免费观看| 欧美精品免费在线观看| 狠狠88综合久久久久综合网| 一道本一区二区| 免费亚洲电影在线观看| 亚洲一区二区久久| 欧美破处大片在线视频| 一区二区在线看| 欧美亚洲在线播放| 99精品国产高清一区二区| 噜噜噜在线观看免费视频日韩| 国产精品久久久久久超碰| av成人福利| 亚洲第一视频网站| 久久精品女人天堂| 欧美精品久久一区二区| 亚洲国产第一页|