亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? devicechooser.cpp

?? 這個是微軟WINCE的OBEX協議例子
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
                    fHaveTransport && (varTransport.vt == VT_BSTR) &&
                    (SUCCEEDED(CLSIDFromString(varTransport.bstrVal, &clsidTrans))))
                {    

                    WCHAR szDevice[512];
                    WCHAR *szTrans = (0 == memcmp(&clsidTrans, &CLSID_BthTransport, sizeof(CLSID))) ? L"BT" : L"IRDA";
					BOOL fAdd = TRUE;

                    if(!fHaveUUID || varUUID.vt != VT_BSTR)
                    {
                        if(!fHavePort)
                            wsprintf(szDevice, L"%s:<unk> (%s)", varDeviceName.bstrVal, szTrans);
                        else if(varPort.vt == VT_BSTR)                            
                            wsprintf(szDevice, L"%s:%s (%s)", varDeviceName.bstrVal, varPort.bstrVal, szTrans);
                        else if(varPort.vt == VT_I4)                            
                            wsprintf(szDevice, L"%s:%d (%s)", varDeviceName.bstrVal, varPort.lVal, szTrans);
                        else
                            wsprintf(szDevice, L"Unknown port type!");
                    }
                    else
                    {
                        BOOL fInbox = FALSE;
                        BOOL fFile = FALSE;
                        WCHAR *pPtrTmp = varUUID.bstrVal;

                        while(pPtrTmp)
                        {
                            if(0==wcsncmp(pPtrTmp,L"{00001105-0000-1000-8000-00805f9b34fb}", 38))
                                fInbox = TRUE;
                            if(0==wcsncmp(pPtrTmp,L"{00001106-0000-1000-8000-00805f9b34fb}", 38))
                                fFile = TRUE;
							
                            pPtrTmp = wcschr(pPtrTmp, ';');
                            if(pPtrTmp)
								pPtrTmp ++;
                        }
						
						//if what we got back doesnt match any of the masked values, delete it
						fAdd = ((fInbox && (ulListenMask & INBOX_LISTEN_MASK)) || (fFile && (ulListenMask & FB_LISTEN_MASK)));                            
						
                        wsprintf(szDevice, L"%s <IB:%s> <FB:%s>", varDeviceName.bstrVal, fInbox?L"YES":L"NO",fFile?L"YES":L"NO"); 
                    }
                    
                    //
					if(fAdd)
					{
						int nIndex = SendMessage(hwndList, LB_ADDSTRING, 0, (LPARAM )szDevice);
						if (nIndex >= 0)
						{
							//
							//  Add the device to the list
							//
							DeviceList *pNew = new DeviceList();
							pNew->pNext = pDeviceList;
							pNew->pBag = pDevice;
							pDeviceList = pNew;
							pDevice->AddRef();
							SendMessage(hwndList, LB_SETITEMDATA, nIndex, (LPARAM )pDevice);
						}
					}
                }            
            }
            else if (wParam == OE_DEVICE_DEPARTURE)
            {
                if (fHaveAddress &&
                    ((varAddress.vt == VT_I4) || (varAddress.vt == VT_BSTR)))
                {
                    UINT numFetched = SendMessage(hwndList, LB_GETCOUNT, 0, 0);  
                    for (ULONG i=0; i<numFetched; i++)
                    {
                        VARIANT var2;
                        VariantInit(&var2);
                        IPropertyBag *pBag = NULL;
                        LPARAM lPar = SendMessage(hwndList, LB_GETITEMDATA, (WPARAM )i, NULL);

                        if ((lPar != LB_ERR) && (lPar != LB_ERRSPACE))
                            pBag = (IPropertyBag *)lPar;
            
                        if (pDevice == pBag)
                        {                            
                            SendMessage(hwndList, LB_DELETESTRING, (WPARAM )i, NULL);
                            i = numFetched;
                        }

                        VariantClear(&var2);
                    }
                }
            }
            else if (wParam == OE_DEVICE_UPDATE)
            {
                CLSID clsidTrans;

                if (fHaveAddress && ((varAddress.vt == VT_I4) || (varAddress.vt == VT_BSTR)) &&
                    fHaveDeviceName && (varDeviceName.vt == VT_BSTR) &&
                    fHaveTransport && (varTransport.vt == VT_BSTR) &&
                    (SUCCEEDED(CLSIDFromString(varTransport.bstrVal, &clsidTrans))))
                {
                    UINT numFetched = SendMessage(hwndList, LB_GETCOUNT, 0, 0);  
                    for (ULONG i=0; i < numFetched; i++)
                    {                        
                        IPropertyBag *pBag = NULL;
                        LPARAM lPar = SendMessage(hwndList, LB_GETITEMDATA, (WPARAM)i, NULL);

                        if ((lPar != LB_ERR) && (lPar != LB_ERRSPACE))
                            pBag = (IPropertyBag *)lPar;
                        
                        if (pDevice == pBag)
                        {
                            WCHAR szDevice[512];
                            WCHAR *szTrans = (0 == memcmp(&clsidTrans, &(CLSID_BthTransport), sizeof(CLSID))) ? L"BT" : L"IRDA";
							BOOL fDelete = FALSE;

                            if(!fHaveUUID || varUUID.vt != VT_BSTR)
                            {
                                if(!fHavePort)
                                    wsprintf(szDevice, L"%s:<unk> (%s)", varDeviceName.bstrVal, szTrans);
                                else if(varPort.vt == VT_BSTR)                            
                                    wsprintf(szDevice, L"%s:%s (%s)", varDeviceName.bstrVal, varPort.bstrVal, szTrans);
                                else if(varPort.vt == VT_I4)                            
                                    wsprintf(szDevice, L"%s:%d (%s)", varDeviceName.bstrVal, varPort.lVal, szTrans);
                                else
                                    wsprintf(szDevice, L"Unknown port type!");
                            }
                            else
                            {
								BOOL fInbox = FALSE;
								BOOL fFile = FALSE;   
                                WCHAR *pPtrTmp = varUUID.bstrVal;

                                while(pPtrTmp)
                                {
                                    if(0==wcsncmp(pPtrTmp,L"{00001105-0000-1000-8000-00805f9b34fb}", 38))
                                        fInbox = TRUE;
                                    if(0==wcsncmp(pPtrTmp,L"{00001106-0000-1000-8000-00805f9b34fb}", 38))
                                        fFile = TRUE;

                                    pPtrTmp = wcschr(pPtrTmp, ';');
                                    if(pPtrTmp)
                                       pPtrTmp ++;
                                }

								//if what we got back doesnt match any of the masked values, delete it
								fDelete = !((fInbox && (ulListenMask & INBOX_LISTEN_MASK)) || (fFile && (ulListenMask & FB_LISTEN_MASK)));                            
                                wsprintf(szDevice, L"%s <IB:%s> <FB:%s>", varDeviceName.bstrVal, fInbox?L"YES":L"NO", fFile?L"YES":L"NO"); 
                            }
                            
						
							//delete this guy	
                            SendMessage(hwndList, LB_DELETESTRING, (WPARAM)i, NULL);

							//only reinsert if told not to delete
							if(!fDelete)
							{
								SendMessage(hwndList, LB_INSERTSTRING, (WPARAM)i, (LPARAM)szDevice);                                                        
								SendMessage(hwndList, LB_SETITEMDATA,  (WPARAM)i, (LPARAM)pBag);
							}
                            

                            i = numFetched;    // end the loop here
                        }                    
                    }                
                }
            }

            VariantClear(&varPort);
            VariantClear(&varDeviceName);
            VariantClear(&varTransport);
            VariantClear(&varAddress);

            pDevice->Release();
        }
        
        
        LeaveCriticalSection(&csLock);
        break;
    }

    case WM_COMMAND:
        switch(wParam)
        {
        case IDOK:
            {    
                EnterCriticalSection(&csLock);
                UINT i = SendMessage(hwndList, LB_GETCURSEL, 0, 0);  
                UINT numFetched = SendMessage(hwndList, LB_GETCOUNT, 0, 0);  
            
                int nRet = 1;
                if(i == LB_ERR)
                {                
                    LeaveCriticalSection(&csLock);
                    MessageBox(NULL, L"Nothing Selected", L"Error", MB_OK);                    
                }
                else                
                {
                    HCURSOR hCurOld;
                    hCurOld = SetCursor(LoadCursor(NULL, IDC_WAIT));

                    //
                    //  Disconnect ourselves as a sink
                    if (pConPt)
                    {
                        pConPt->Unadvise(dwCookie);                        
                        pConPt->Release();
                        pConPt = NULL;
                    }
                
                    //stop the device enumeration
                    pObex->StopDeviceEnum();
                    fIsEnuming = FALSE;
                    
                
                    
                    for(UINT j=0; j<numFetched; j++)
                    {
                        LPARAM lPar = SendMessage(hwndList, LB_GETITEMDATA, (WPARAM )j, NULL);
                        if ((lPar != LB_ERR) && (lPar != LB_ERRSPACE))
                        {
                            IPropertyBag *pBag = (IPropertyBag *)lPar;
                            ASSERT(pBag);
                            if(i==j)
                            {                                
                                HRESULT hr;
                                                               
                                //
                                // put in the requested service here
                                if(ulListenMask & FB_LISTEN_MASK) {
                                    VARIANT varRequested;
                                    VariantInit(&varRequested);

                                    varRequested.vt = VT_BSTR;
                                    varRequested.bstrVal = SysAllocString(L"{00001106-0000-1000-8000-00805f9b34fb}");    
                                    hr = pBag->Write(L"RequestedServiceUUID", &varRequested);    
                                    VariantClear(&varRequested);                                    
                                }                                                   
                                
                                hr = pObex->BindToDevice(pBag, ppObexDevice);
                                
                                if(FAILED(hr))                                
                                    *ppObexDevice = NULL;
                                
                                break;
                            }

                            //    NOTE: DO NOT RELEASE the propery bag.
                            //    it it contained withing the list of bags
                            //    and will be removed during dialog cleanup
                            //
                        }
                    }
                    SetCursor(hCurOld);
                    LeaveCriticalSection(&csLock);
                    EndDialog(hwnd, nRet); 
                }
                    
            }
            break;
        }
        break;

        default:
            break;
    }
    return DefWindowProc(hwnd, message, wParam, lParam);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆精品国产91久久久久| 亚洲成人777| 日韩高清国产一区在线| 国产一区视频在线看| 在线区一区二视频| 欧美韩国日本一区| 美女被吸乳得到大胸91| 欧美视频自拍偷拍| 18成人在线观看| 国产河南妇女毛片精品久久久| 欧美日韩视频在线观看一区二区三区| 中文字幕av不卡| 国产一区二区三区四区在线观看| 8v天堂国产在线一区二区| 亚洲欧美一区二区不卡| 国产99久久久国产精品潘金网站| 精品日韩99亚洲| 日本v片在线高清不卡在线观看| 91视频国产观看| 中文字幕亚洲视频| 风间由美中文字幕在线看视频国产欧美 | 久久久影院官网| 日韩 欧美一区二区三区| 欧美日韩亚州综合| 亚洲高清在线精品| 欧美亚洲另类激情小说| 一区二区三区成人在线视频| 波多野结衣在线一区| 欧美国产激情一区二区三区蜜月 | 日韩欧美一区电影| 美女视频第一区二区三区免费观看网站| 欧美日韩大陆在线| 日本va欧美va瓶| 日韩欧美中文一区| 国产美女一区二区三区| 国产蜜臀av在线一区二区三区| 国产精品影视在线| 国产精品素人一区二区| 成人av在线看| 一区二区三区毛片| 欧美精品久久久久久久多人混战 | 免费成人在线网站| 精品福利在线导航| 成人涩涩免费视频| 一区二区三区精密机械公司| 色猫猫国产区一区二在线视频| 一区二区理论电影在线观看| 欧美性生活久久| 久久99久久精品| 国产精品国产a| 欧美日韩一区不卡| 久久99国产精品成人| 国产欧美一区二区精品久导航| 91香蕉国产在线观看软件| 洋洋成人永久网站入口| 日韩一区二区免费电影| 成人高清av在线| 亚洲一区中文在线| 精品少妇一区二区三区免费观看| 国产 日韩 欧美大片| 亚洲午夜成aⅴ人片| 久久综合成人精品亚洲另类欧美| 99麻豆久久久国产精品免费 | 午夜欧美大尺度福利影院在线看| 欧美一区2区视频在线观看| 国产成a人亚洲| 亚洲第一主播视频| 欧美激情中文不卡| 日韩一区二区三区视频在线| 国产一区二区三区精品欧美日韩一区二区三区 | 91精品蜜臀在线一区尤物| 国产精品2024| 天堂va蜜桃一区二区三区 | 日韩精品一区在线| 一本色道亚洲精品aⅴ| 激情伊人五月天久久综合| 亚洲日本在线视频观看| 精品国产髙清在线看国产毛片| www.成人在线| 狠狠狠色丁香婷婷综合久久五月| 亚洲色图视频免费播放| 2020日本不卡一区二区视频| 欧亚洲嫩模精品一区三区| 丁香一区二区三区| 日本成人中文字幕| 亚洲精品视频观看| 欧美国产精品久久| 精品精品国产高清a毛片牛牛 | 精品视频一区二区不卡| 国产成人av影院| 久久99深爱久久99精品| 亚洲成av人片| 亚洲一卡二卡三卡四卡| 中文字幕在线观看一区二区| 26uuu精品一区二区三区四区在线| 欧美日韩国产小视频在线观看| av电影天堂一区二区在线| 国产福利一区二区三区视频| 久久精品99国产精品| 日本成人在线网站| 日韩精品每日更新| 天天综合日日夜夜精品| 亚洲一区二区视频在线| 亚洲欧美福利一区二区| 国产精品久99| 国产精品欧美一区二区三区| 日本一区二区三区在线不卡| 久久精品免费在线观看| 精品捆绑美女sm三区| 精品国产不卡一区二区三区| 日韩欧美国产一二三区| 91精品国产一区二区人妖| 欧美另类videos死尸| 欧美日韩五月天| 51久久夜色精品国产麻豆| 在线成人小视频| 欧美一级久久久久久久大片| 日韩一区二区精品葵司在线| 7777精品伊人久久久大香线蕉超级流畅| 在线看日本不卡| 欧美日韩你懂的| 日韩欧美国产一二三区| 久久久久国产精品厨房| 国产精品久久久久天堂| 亚洲天堂免费在线观看视频| 一区二区三区欧美视频| 性做久久久久久久免费看| 免费看日韩精品| 国产精品一区二区三区99| 国产成人精品一区二区三区四区| 成人高清视频在线观看| 日本久久电影网| 91精品国产综合久久久久久久 | 亚洲综合久久久久| 天天综合日日夜夜精品| 国产精品影视网| 91福利国产精品| 精品国产免费人成在线观看| 国产精品视频你懂的| 一区二区三区欧美| 美女视频免费一区| 成人一区二区三区视频在线观看 | 色久优优欧美色久优优| 欧美日本一区二区三区| 国产三级一区二区| 亚洲一区二区影院| 激情综合网av| 欧美专区在线观看一区| 精品久久久久久久久久久院品网 | 精品日本一线二线三线不卡| 中文字幕一区二区不卡| 另类小说一区二区三区| 色综合久久久网| 欧美成人一区二区三区在线观看| 国产色产综合色产在线视频| 香蕉成人啪国产精品视频综合网| 国产一区二区女| 欧美日韩国产a| 欧美国产在线观看| 五月开心婷婷久久| 成人午夜碰碰视频| 欧美一区二区视频在线观看2020| 中文字幕av免费专区久久| 久久精品国产免费| 欧美日韩免费电影| 中文字幕视频一区二区三区久| 蜜桃免费网站一区二区三区| 一本到三区不卡视频| 中文字幕av在线一区二区三区| 九九**精品视频免费播放| 91啪亚洲精品| 久久―日本道色综合久久| 午夜免费欧美电影| 欧美主播一区二区三区| 国产精品色呦呦| 国产乱人伦偷精品视频免下载| 欧美精品 日韩| 亚洲国产精品一区二区www| 色综合久久久久久久久久久| 久久久久久9999| 精品伊人久久久久7777人| 欧美高清视频不卡网| 亚洲高清免费观看 | 成人激情文学综合网| 精品国产制服丝袜高跟| 日韩高清不卡一区| 欧美女孩性生活视频| 亚洲国产成人tv| 国产欧美日韩视频一区二区| 久久精品国产免费看久久精品| 欧美精品丝袜久久久中文字幕| 一级做a爱片久久| 欧美系列亚洲系列| 亚洲一区二区四区蜜桃| 欧美色区777第一页| 一区二区三国产精华液| 欧美日韩精品二区第二页| 亚洲第一福利一区| 91精品啪在线观看国产60岁| 日本午夜一本久久久综合|