freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

activesync編程總結(jié)-全文預(yù)覽

  

【正文】 實(shí)時(shí)報(bào)告如果一個(gè)ActiveSync provider具備這樣一種能力:能夠在桌面端store發(fā)生改變和刪除的時(shí)候立刻就能探測(cè)到,那么它可以調(diào)用IReplNotify::OnItemNotify,以便讓ActiveSync manager立刻知道,如果對(duì)象只是簡(jiǎn)單地被創(chuàng)建或者修改,ActiveSync provider傳遞RNC_MODIFIED或者RNC_CREATED,如果對(duì)象被刪除則傳遞RNC_DELETED,它也傳遞給這個(gè)對(duì)象,這允許ActiveSync manager在自己的表中搜索,并找出這個(gè)句柄對(duì)應(yīng)了哪個(gè)設(shè)備對(duì)象。然后ActiveSync manager調(diào)用IReplStore::IsItemReplicated來判斷是否將它發(fā)送到設(shè)備端,在列舉結(jié)束后,所有ActiveSync manager內(nèi)部表中的那些標(biāo)記為代表那些沒有被列舉返回的對(duì)象的句柄,將會(huì)在桌面端的Store中被刪除。如果ActiveSync provider有實(shí)時(shí)探測(cè)改變和刪除的能力,它將除連接設(shè)備后第一次調(diào)用IReplStore::IsFolderChanged外,每次都設(shè)置pfChanged為false。對(duì)于需要和多臺(tái)設(shè)備相連的設(shè)備而言,這不是期待的行為,如果每臺(tái)pc上的過濾器都不相同,PC端的對(duì)象有可能被刪除,因?yàn)樵O(shè)備端對(duì)象被另一個(gè)桌面PC的過濾器過濾出局時(shí)已經(jīng)被刪掉了。在例子代碼中,它在內(nèi)存映射文件中為所有存在對(duì)象搞了一個(gè)快照,并調(diào)用了IReplStore::FindNextItem。ActiveSync manager通常在它試圖調(diào)用IReplStore::Release之前,用RSC_RELEASE參數(shù)調(diào)用IReplStore::ReportStatus,一個(gè)ActiveSync provider能夠確認(rèn)在RSC_RELEASE接受之后,所有的外部接口都已經(jīng)被釋放。szSyncText[ MAX_PATH ]。char// 名稱欄顯示文本HICON// 結(jié)構(gòu)大小cbStruct。UINT一個(gè)ActiveSync provider必須正確地設(shè)置給定的OBJUIDATA數(shù)據(jù)結(jié)構(gòu),這個(gè)typedef struct tagObjUIData{為了獲得被選中的設(shè)備的注冊(cè)表鍵,用IReplNotify::QueryDevice(QDC_SEL_DEVICE_KEY,amp。初始化和結(jié)束IReplStore::Initialize確保了要同步的文件,存在并且是被打開了(),這個(gè)需要同步的文件的名字被存放在注冊(cè)表中,這個(gè)文件名在注冊(cè)表中的位置依賴于ActiveSync provider是為了連接還是為了選擇設(shè)備。如果ActiveSync provider不支持實(shí)時(shí)地通知?jiǎng)h除或改變的能力,它需要正確設(shè)置STOREINFO::uTimerRes。UINT uTimerRes。聯(lián)合意味著把所有桌面端和設(shè)備端所有對(duì)象聯(lián)合到一起;丟棄意味著丟棄設(shè)備中的對(duì)象并用桌面端對(duì)象來替代它們。(dat文件只存在于設(shè)備端?還是桌面端也有?)一個(gè)ActiveSync provider實(shí)現(xiàn)IReplStore:: ObjectToBytes來轉(zhuǎn)換一個(gè)HREPLITEM或HREPLFLD為一串字節(jié),用IReplStore:: BytesToObject把一系列字節(jié)轉(zhuǎn)換回句柄。(多個(gè)類型就得創(chuàng)建多個(gè)文件夾對(duì)象,用于存放不同的對(duì)象類型)。前者是在枚舉同步對(duì)象時(shí)調(diào)用,后者我想是在讀取需要同步的文件時(shí),附帶產(chǎn)生的(因?yàn)锳ctiveSync manager在作真正的同步時(shí),假如根據(jù)兩個(gè)文件的最后日期判定了要保留其中某端(桌面端或設(shè)備端)的一個(gè),那么就會(huì)從存儲(chǔ)中讀取該文件,這時(shí)需要一個(gè)BytesToObject的過程,同理,在另一端寫入時(shí)需要一個(gè)相反的過程,這些都是由兩端的ActiveSync manager調(diào)度,我們只能提供manager調(diào)用的回調(diào)函數(shù))。Tasks設(shè)備的注冊(cè)和以上過程很相似但更簡(jiǎn)單。ContactAppointmentObjectsSoftware0缺省是同步對(duì)象的描述名稱,顯示名和復(fù)數(shù)名是文本,將會(huì)顯示在各種用戶界面中,存儲(chǔ)值是ActiveSync服務(wù)提供者的ProgId的名字,Disabled告訴我們這種同步缺省狀態(tài)下是否無效?!癘utlook Appointment Object”Display NameSynchronizationSoftwareProgID鍵的缺省值,在這個(gè)例子中,在service provider被注冊(cè)之后,你必須在HKEY_LOCAL_MACHINE主鍵下子目錄下,注冊(cè)它同步的每個(gè)對(duì)象類型。配置你必須為ActiveSync管理者建立正確的配置以注冊(cè)一個(gè)ActiveSync服務(wù)提供者。它也可以實(shí)現(xiàn)FindObjects和syncData()它也能有選擇地實(shí)現(xiàn)和導(dǎo)出ReportStatus。這個(gè)接口一共22個(gè)方法,大致可以分為以下幾類:Initialize,GetStoreInfo,CompareStoreIDs:FindFirstItem,FindNextItem,FindItemClose:CompareItem,IsItemChanged,IsItemReplicated,UpdateItem:ObjectToBytes,BytesToObject,FreeObject,CopyObject,IsValidObject:ActivateDialog,GetObjTypeUIData,GetConflictInfo,RemoveDuplicates:ReportStatus,GetFolderInfo,IsFolderChanged. IReplObjHandler是用于序列化對(duì)象的接口(把同步對(duì)象轉(zhuǎn)換成一系列的字節(jié))和反序列化(把一系列字節(jié)轉(zhuǎn)換回一個(gè)對(duì)象),他們也用來從存儲(chǔ)中刪除一個(gè)對(duì)象。桌面模塊是一個(gè)典型的32bit處理服務(wù)器,由兩個(gè)COM接口實(shí)現(xiàn):IReplStore和IReplObjHandler。一個(gè)用于顯示對(duì)象類型的名稱可以在注冊(cè)表中建立(如appointment這個(gè)類型名稱會(huì)在ActiveSync Option對(duì)話框中顯示)這一點(diǎn)很重要:object和object type是邏輯定義的,你自己來創(chuàng)建,而且可以是需要的任何東西。同樣它還可以把一系列字節(jié)轉(zhuǎn)換為回一個(gè)對(duì)象(還是它代表的同步文件?)。但它必須容納objects。它需要滿足以下標(biāo)準(zhǔn):每個(gè)object的object ID,在同一類型中它必須唯一,它一旦被設(shè)定就不允許改變,如果它所標(biāo)示的object被刪除,那么它不允許被重復(fù)使用。開始,你必須決定你需要同步的數(shù)據(jù)是什么樣(比如,)。多數(shù)情況下用于接口方法的命名。舉例來說,微軟Outlook ActiveSync service provider同步約會(huì)(appointments),聯(lián)系(contact),電子郵件和任務(wù)。WinCE提供了幾個(gè)缺省的ActiveSync service provider,舉例來說,微軟Outlook ActiveSync service provider同步微軟Outlook消息,并用WinCE設(shè)備上的Outlook來與客戶端協(xié)同(the Microsoft Outlook ActiveSync Service Provider synchronizes the Microsoft Outlook174。數(shù)據(jù)同步,需要以最后一次同步時(shí)的數(shù)據(jù)為準(zhǔn),來判斷所監(jiān)控的對(duì)象(),是發(fā)生了改變還是刪除。用戶得到指向類廠對(duì)象的ppv指針后,就可以調(diào)用CASPSimpleFactory::CreateInstance函數(shù)創(chuàng)建一個(gè)CASPSimpleStore對(duì)象,同樣也是靠用戶傳入的ppv指針接收CASPSimpleStory對(duì)象,得到這個(gè)對(duì)象的指針,用戶(其實(shí)就是ActiveSync管理器)就可以調(diào)用CASPSimpleStory接口提供的函數(shù)來獲得存儲(chǔ)中指定要同步的CReplItem對(duì)象,并和設(shè)備端作同步操作了。另一個(gè)接口是IReplObjHandler,這個(gè)接口用于根據(jù)manager提供的對(duì)象生成需要同步的文件或者根據(jù)需要同步的文件來生成內(nèi)存中的同步對(duì)象。 From:(參考MSDN Programmer’s guide of ActiveSync)WindowsPE設(shè)備和桌面端作同步,在每一端都有ActiveSync manager(管理器)和ActiveSync provider(提供者)兩部分組成,我們要編寫的是ActiveSync provider部分。 provider 總結(jié) ActiveSync編程總結(jié)(一)關(guān)鍵詞: ActiveSync 一個(gè)是IReplStore(這個(gè)負(fù)責(zé)處理具體查找哪些同步對(duì)象,桌面端數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)是:StorefolderItem,Item代表對(duì)象類型,是ActiveSync同步處理中的最基本的單元,(一個(gè)ActiveSync Provider支持多個(gè)對(duì)象類型的同步,例如在Outlook provider中,支持約會(huì),聯(lián)系和計(jì)劃任務(wù)三種同步類型,ASPSimple僅包含一個(gè),就是一個(gè)文本文件)Item至少包含兩個(gè)屬性,()具體到Aspsample例子,是CReplItem對(duì)象,包含一個(gè)文件最后更新時(shí)間(用于判斷該文件是否被更改了)和文件的絕對(duì)路徑(唯一的對(duì)象標(biāo)識(shí)符)),根據(jù)MSDN中的程序員向?qū)В琲tem的唯一屬性還需要滿足可以排序這一特性,另外為了高效最好讓Item盡量小,ActiveSync會(huì)通過HREPLITEM指針來訪問這些數(shù)據(jù)(CReplItem對(duì)象)。iid,void **ppv)中創(chuàng)建了一個(gè)CASPSimpleFactory對(duì)象,并把指針賦給*ppv,該對(duì)象繼承自IClassFactory接口,負(fù)責(zé)產(chǎn)生所需要的對(duì)象,具體就是store對(duì)象。一個(gè)數(shù)據(jù)傳輸過程在兩個(gè)電腦之間發(fā)送一系列數(shù)據(jù),但是沒有必要檢查傳輸?shù)臄?shù)據(jù)和接受電腦上的數(shù)據(jù)有什么不同。你可以開發(fā)ActiveSync provider來同步任何形式的數(shù)據(jù)。ActiveSync manager內(nèi)建在Window CE服務(wù)之中,你只需要開發(fā)和注冊(cè)ActiveSync provider來同步你的數(shù)據(jù)(provider去做和你的數(shù)據(jù)相關(guān)的任務(wù),例如把一個(gè)對(duì)象轉(zhuǎn)化為一個(gè)字節(jié)流并逆向轉(zhuǎn)換,枚舉和同步數(shù)據(jù)相關(guān)的對(duì)象,提供一個(gè)用戶界面等)設(shè)計(jì)考慮事項(xiàng)一個(gè)object是你想同步的一項(xiàng),在你的程序中也許需要同步幾個(gè)不同類型的對(duì)象。“文件夾”(folder)類似于對(duì)象類型。一個(gè)store可以是一個(gè)數(shù)據(jù)庫(kù)或者一個(gè)文件。一個(gè)object ID是一個(gè)32bit的值,可以是整型,一個(gè)字符串或一系列字節(jié)。Store可以使一個(gè)一個(gè)平滑文件(flat file),一個(gè)winCE數(shù)據(jù)庫(kù);或者一切其他用戶自定義的格式。程序還必須能把一個(gè)對(duì)象(還是它代表的同步文件呢?)轉(zhuǎn)換為一系列的字節(jié),用于桌面電腦和winCE設(shè)備之間的傳輸。這個(gè)名稱會(huì)在注冊(cè)表和你要開發(fā)的代碼中使用。下面的圖表顯示了那些模塊如何與你的應(yīng)用程序合作。這些函數(shù)通過ActiveSync service manager提供的接口工作,ActiveSync service provider的這兩部分都使用IReplObjHandler接口傳輸數(shù)據(jù)ActiveSync結(jié)構(gòu)圖 Desktop InterfacesIReplStore是開發(fā)者必須編寫的ActiveSync provider桌面端模塊中最重要的一個(gè)接口。設(shè)備功能設(shè)備一端的ActiveSync提供者必須實(shí)現(xiàn)和導(dǎo)出這三個(gè)函數(shù):InitObjType,ObjectNotify,和GetObjTypeInfo。ReportStatus允許一個(gè)設(shè)備ActiveSync提供者被一個(gè)特定事件所通知。例如,用于微軟Outlook ActiveSync服務(wù)提供者的ProgID是“.”第二,你需要為服務(wù)提供者產(chǎn)生一個(gè)GUID(或CLSID),你必須在注冊(cè)表中創(chuàng)建下列鍵值來注冊(cè)服務(wù)提供者:HKEY_CLASSES_ROOT\Clsid\\InProcServer32HKEY_CLASSES_ROOT
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1