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

正文內容

com多線程模型、dcom(參考版)

2024-07-26 22:36本頁面
  

【正文】 } COAUTHINFO。 COAUTHIDENTITY * pAuthIdentityData。 DWORD dwAuthnLevel。 DWORD dwAuthzSvc。決定 “ 哪些用戶能夠 (或者不能夠 )在激活時刻啟動服務器進程 ” ? 因為此安全性決定了客戶是否有啟動進程的許可,所以這項安全性不能在程序中控制 ? 通過注冊表實施 launching security – 先找到 APPID的 LaunchPermission設置 – 機器范圍內的缺省設置 訪問安全性 ? 決定 “ 哪些用戶可以與服務器進程的對象進行實際的通信 ” ? 控制過程 – 服務進程調用 CoInitializeSecurity – AppID鍵中的 AccessPermission設置 – 機器范圍內的 DefaultAccessPermission設置 – 隱式調用 CoInitializeSecurity,含服務器進程的principal和 SYSTEM賬號 動態(tài)安全性控制 ? 若進程調用了 CoInitiallizeSecurity函數,則進程不再使用注冊表的靜態(tài)設置 HRESULT CoInitializeSecurity( PSECURITY_DESCRIPTOR pVoid, //Points to security descriptor DWORD cAuthSvc, //Count of entries in asAuthSvc SOLE_AUTHENTICATION_SERVICE * , //Array of names to register void * pReserved1, //Reserved for future use DWORD dwAuthnLevel, //The default authentication level for proxies DWORD dwImpLevel, //The default impersonation level for proxies RPC_AUTH_IDENTITY_HANDLE pAuthInfo, // Reserved DWORD dwCapabilities, //Additonal client and/or serverside capabilities void * pvReserved2)。 ? HandleInComingCall函數的參數 dwCallType指示了調用的類型,參數 pInterfaceInfo標識了對象、接口和成員函數信息 ? HandleInComingCall函數的返回值: – SERVERCALL_REJECTED – SERVERCALL_RETRYLATER – SERVERCALL_ISHANDLED 客戶程序方的消息過濾器 ? 當客戶的調用被組件拒絕之后, COM在作了有關的處理后調用過濾器的 RetryRejectedCall成員函數,由客戶決定是否繼續(xù) ? RetryRejectedCall返回 1表示放棄調用;否則返回一個以毫秒計的時間數,經過這段時間后, COM將再次調用組件對象 ? 缺省對話框: 客戶程序的消息處理 ? RPC通道也為客戶程序分發(fā)消息,所以在遠程調用完成之前,客戶程序的消息隊列也會接收到消息,MessagePending成員函數讓客戶有機會控制消息處理方案。 Message Filter作用示意圖 Clientside MsgFilter Serverside MsgFilter RPC通道 RPC通道 分發(fā)調用 客戶調用 IMessageFilter 接口 ? 返回值類型都是 DWORD ? 類型 HTASK用來標識一個調用,通常為邏輯線程 ID,在一臺機器上唯一存在 ? HandleInComingCall用于組件對象一方的消息過濾器 ? RetryRejectedCall和 MessagePending用于客戶一方的消息過濾器 實現消息過濾器機制 ? 客戶程序或者組件程序實現過濾器對象,然后用 CoRegisterMessageFilter函數指定使用自定義的消息過濾器;否則COM使用缺省的過濾器對象。 DWORD MessagePending (HTASK threadIDCallee, DWORD dwTickCount, DWORD dwPendingType) = 0。 控制遠程對象的生存期 ? DCOM優(yōu)化了遠程對象的 AddRef和 Release調用,客戶程序不必考慮優(yōu)化 ? OR (OXID Resolver)服務 – OXID(object exporter identifier) 對象 ? OXID對象實現了 IRemUnknown接口 – RemQueryInterface – RemAddRef和 RemRelease ? 參考資料: MSJ, 1998年第 3期 – Understanding the DCOM Wire Protocol by Analyzing Network Data Packets DCOM使用 ORPC協議實現遠程通信 OR service OR service Client Server OXID表 OXID表 OR RPC stub proxy ORPC IPC IPC Pinging機制 (一 ) ? 對于非正常情況,若組件進程非正常終止,客戶可以根據返回值判斷出來 ? 若客戶非正常終止,組件進程該怎么辦? ? 為了檢測客戶程序是否非正常終止, DCOM提供了 “ pinging”機制 ? 每個被遠程使用的對象都有 “ pingPeriod”和“ numPingsToTimeOut”計數 Pinging機制 (二 ) ? ping周期:pingPeriod*numPingsToTimeOut ? 當前 DCOM版本中, pingPeriod=2(分 )且numPingsToTimeOut=3,這些值不能被改變 ? pinging機制的優(yōu)化: OXID解析器產生 ping集,減輕網絡負擔 連接傳遞 ? 連接具有可傳遞性,因
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1