新四季網

客戶端的操作狀態信息在遠程桌面會話中的顯示的製作方法

2023-10-17 07:25:04

客戶端的操作狀態信息在遠程桌面會話中的顯示的製作方法
【專利摘要】示例性實施例涉及遠程桌面會話中的操作狀態信息的顯示。在示例性實施例中,客戶端經由與伺服器所建立的遠程桌面會話向伺服器發送操作狀態信息。作為響應,客戶端可以接收包括由伺服器基於操作狀態信息而插入的被顯示的狀態信息的圖形信息。最後,客戶端可以在可用的顯示器上輸出圖形信息。其他實施例涉及對應的伺服器以及在伺服器中被執行的處理。
【專利說明】客戶端的操作狀態信息在遠程桌面會話中的顯示
【背景技術】
[0001]在遠程桌面環境中,伺服器在本地運行桌面會話並且向遠程客戶端提供被輸出的圖形信息以供顯示。例如,諸如膝上型計算機、臺式計算機、或瘦客戶端之類的個人計算設備的用戶可以連接到伺服器並且後續地接收表示伺服器所管理的桌面會話的圖形信息流。作為響應,客戶端可以在可用的顯示器上輸出圖形並且後續地處理來自用戶的輸入以供傳輸回到伺服器。該過程繼續,其中伺服器提供圖形流並且客戶端提供輸入事件。以該方式,即使由伺服器來管理桌面會話,客戶端設備也可以與用戶界面交互就猶如其是本地可用的。
【專利附圖】

【附圖說明】
[0002]以下詳細描述參考附圖,其中:
圖1是用於使得操作狀態信息能夠在客戶端上的遠程桌面會話內顯示的示例性客戶端計算設備的框圖;
圖2是用於使得操作狀態信息能夠在已連接的客戶端上的遠程桌面會話內顯示的示例性伺服器計算設備的框圖;
圖3是為了允許在遠程桌面會話內在客戶端上顯示操作狀態信息而與伺服器計算設備進行通信的示例性客戶端計算設備的框圖;
圖4A是由客戶端計算設備運行以向伺服器發送操作狀態信息並且後續地在遠程桌面會話內顯示操作狀態信息的示例性方法的流程圖;
圖4B是由伺服器計算設備運行以從客戶端接收操作狀態信息並且後續地向客戶端發送包括被顯示的操作狀態信息的遠程桌面的示例性方法的流程圖;
圖5A是由客戶端計算設備運行以向伺服器發送操作狀態信息並且後續地在遠程桌面會話內顯示操作狀態信息的示例性方法的流程圖;
圖5B是由伺服器計算設備運行以從客戶端接收操作狀態信息並且後續地向客戶端發送包括被顯示的操作狀態信息的遠程桌面的示例性方法的流程圖;以及
圖6是用於在遠程桌面會話內顯示客戶端計算設備的電池狀態信息的操作的示例性序列的框圖。
【具體實施方式】
[0003]如以上所詳述的,遠程桌面環境使得即使由伺服器來遠程地管理桌面會話,客戶端也能夠在本地與該會話交互。在一些遠程桌面環境中,客戶端以全屏模式或以遮擋(obscure)主機作業系統(OS)的系統託盤和其他用戶界面元素的大小和位置來顯示遠程桌面。在這些情形中,因為用戶不能夠觀察主機OS的界面,所以用戶可能不知道主機OS和客戶端設備的狀況。
[0004]例如,假設客戶端的電池電量非常低、客戶端的無線信號已減弱、或自動化更新已觸發具有倒計時的重啟消息。在這些情況的每個中,遠程桌面會話可以阻止用戶覺知潛在的狀況,以使得客戶端可能由於功率損耗或電池耗盡而突然關機、由於不足的無線信號而與會話斷開連接、或基於用戶未能響應重啟消息而重啟。這些場景中的每個都是成問題的,原因在於用戶可能丟失數據並且對系統感到失望。同時,對周期地最小化遠程桌面會話或利用更小窗口的替代降低了對於用戶而言的體驗質量。
[0005]為了解決這些問題,本文所公開的示例性實施例提供一種客戶端-伺服器通信機制,通過所述通信機制用戶可以在遠程桌面會話窗口內接收客戶端的本地操作狀況的通知。例如,在一些實施例中,客戶端通過監視諸如電池電量、無線信號等之類的客戶端的屬性來獲取操作狀態信息。客戶端然後可以經由遠程桌面會話向伺服器發送操作狀態信息。作為響應,伺服器可以接收操作狀態信息、將狀態信息的可見指示插入到遠程桌面界面中,並且經由會話將桌面界面返回到客戶端。最後,客戶端可以接收桌面界面並且在可用的顯示器上輸出它,以使得客戶端的操作狀況在遠程桌面會話窗口內對於用戶而言是可見的。
[0006]以該方式,本文所公開的示例性實施例允許用戶監視遠程桌面會話內的客戶端設備的狀態。示例性實施例從而維持用於遠程桌面會話的高體驗質量,而仍然允許用戶保持對主機OS和客戶端設備的電池電量、無線信號、以及其他狀況的覺知。在閱讀和理解以下描述之上,此類實施例的附加實施例和優勢對於本領域技術人員而言將是明顯的。
[0007]現在參考附圖,圖1是用於使得操作狀態信息能夠在客戶端上的遠程桌面會話內顯示的示例性客戶端計算設備100的框圖。客戶端計算設備100可以是例如筆記本計算機、臺式計算機、多合一系統、瘦客戶端、工作站、平板計算設備、行動電話、或適於運行以下所描述的功能的任何其他計算設備。在圖1的實現中,客戶端計算設備100包括處理器110、接口 115、和機器可讀存儲介質120。
[0008]處理器110可以是一個或多個中央處理單元(CPU)、微處理器、和/或適於檢索和運行被存儲在機器可讀存儲介質120中的指令的其他硬體設備。如以下所描述的,處理器110可以取出、解碼、和運行指令122、124、126、128以實現用於在遠程桌面會話內顯示操作狀態信息的步驟。作為檢索和運行指令的替代或附加,處理器110可以包括包含用於執行指令122、124、126、128中的一個或多個的功能的多個電子組件的一個或多個電子電路。
[0009]接口 115可以包括用於與諸如圖2的伺服器200之類的伺服器計算設備進行通信的多個電子組件。例如,接口 115可以是有線或無線網絡接口卡(NIC)或者適於與對應的伺服器計算設備進行通信的其他聯網設備。在操作中,如以下所詳述的,接口 115可以被用來向伺服器發送操作狀態信息並且用來從伺服器接收遠程桌面以供在客戶端100的顯示設備上輸出。
[0010]機器可讀存儲介質120可以是任何電子、磁性、光學、或者包含或存儲可執行指令的其他物理存儲設備。因而,機器可讀存儲介質120可以是例如隨機訪問存儲器(RAM)、電可擦除可編程只讀存儲器(EEPR0M)、存儲驅動器、光碟等。如以下所詳細描述的,機器可讀存儲介質120可以通過用於向伺服器發送操作狀態信息並且從伺服器接收包括被輸出的狀態信息的遠程桌面的可執行指令來編碼。
[0011]操作狀態監視指令122可以通過監視客戶端計算設備100的至少一個屬性來獲取操作狀態信息。操作狀態信息可以包括當客戶端處於操作中時與客戶端100的屬性相關的任何信息。因而,操作狀態信息可以描述諸如作業系統或在作業系統內運行的另一個應用之類的客戶端100的軟體的當前狀態。例如,操作狀態信息可以涉及由OS或另一個應用所顯示的提示或其他消息(例如,關機、重啟、或其他功率狀態消息)或者可以影響客戶端100的性能的應用的當前狀態(例如,病毒或惡意軟體掃描的狀態)。類似地,操作狀態信息可以描述諸如電池、網絡設備、處理器、存儲器、或任何其他硬體組件之類的客戶端100的硬體的當前狀態。例如,操作狀態信息可以涉及電池電量、交流(AC)電源的可用性、無線信號強度、當前存儲器或處理器使用、音量、或任何其他硬體屬性。
[0012]監視指令122可以使用多種技術來獲取操作狀態信息。在一些實現中,監視指令122可以監視在客戶端100的OS內被交換的預定消息。例如,基本輸入/輸出系統(BIOS)可以向OS提供與客戶端100的硬體相關的消息,並且監視指令122可以檢測這些消息以及提取所需的信息。類似地,監視指令122可以攔截或以其他方式訪問在客戶端100的OS的組件之間被交換的或者在OS與運行於OS內的應用之間交換的諸如顯示用戶界面元素的消息(例如,彈出消息)或者被用來更新系統託盤元素的消息之類的消息。然而應該注意的是,可以利用可替代的監視技術,如果監視指令122能夠收集所需的操作狀態信息的話。
[0013]在一些實施例中,可以由用戶來標識要被監視的特定信息。例如,客戶端計算設備100可以輸出允許用戶選擇用戶感興趣的特定類型的信息的用戶界面。監視指令122然後可以通過僅監視由用戶所請求的操作狀態信息來獲取所請求的信息。例如,當監視在客戶端100的OS內交換的消息時,監視指令122可以基於用戶對感興趣的操作狀態信息的選擇來確定要訪問哪些消息。
[0014]在監視指令122獲取操作狀態信息之後,操作狀態發送指令124可以經由與伺服器所建立的遠程桌面會話向伺服器計算設備發送操作狀態信息。遠程桌面會話可以是任何通信會話,其中客戶端計算設備100從伺服器計算設備接收桌面的圖形用戶界面。例如,可以根據Microsoft遠程桌面協議(RDP)、Citrix獨立計算架構(ICA)、或Teradici通過網際協議的個人計算機(PCoIP)協議來建立遠程桌面會話。
[0015]由用於傳輸操作狀態信息的發送指令124所使用的機制可以因實施例而異。例如,在一些實現中,發送指令124可以利用在客戶端100的接口 115與伺服器的對應接口之間所建立的虛擬信道。在一些實現中,該虛擬信道可以是專用信道,以使得僅經由該特定信道發送操作狀態信息。
[0016]不管傳輸機制如何,發送指令124可以包括對操作狀態信息的類型的標識(例如,標識符、柄(handle)等),以使得伺服器能夠識別所發送的信息。發送指令124然後可以包括與該類型的標識關聯的實際狀態信息。例如,發送指令124可以發送作為數字字母字符串、數字、或採用任何其他格式的信息,如果伺服器被預配置成讀取採用所選擇的格式的狀態息。
[0017]向伺服器傳輸操作狀態信息之後是,遠程桌面接收指令126可以接收遠程桌面以供顯示,所述遠程桌面包括由伺服器基於操作狀態信息而插入的被顯示的狀態信息。例如,遠程桌面可以包括圖形信息,所述圖形信息包括例如對話、通知、圖標、文本、或者與監視指令122所獲取的以及發送指令124所發送的狀態信息對應的其他界面元素之類的被顯示的狀態信息。以下結合圖2的伺服器計算設備200提供了關於伺服器插入被顯示的狀態信息的附加細節。
[0018]最後,在接收遠程桌面時,遠程桌面顯示指令128可以在客戶端上的遠程桌面會話的窗口內顯示包括被顯示的狀態信息的遠程桌面。例如,客戶端100的圖形界面可以向諸如集成或外部顯示器之類的可用的顯示設備輸出接收到的圖形信息。基於指令122、124、126,128的重複運行,客戶端計算設備100從而可以持續地監視操作狀態信息以及在遠程桌面會話內顯示狀態信息。
[0019]圖2是用於使得操作狀態信息能夠在已連接的客戶端上的遠程桌面會話內顯示的示例性伺服器計算設備200的框圖。伺服器計算設備200可以是適於在本地運行桌面會話並且發送會話以供在客戶端上顯示的任何設備。在圖2的實現中,伺服器計算設備200包括處理器210、接口 215、和機器可讀存儲介質220。
[0020]如圖1的處理器110 —樣,處理器210可以是適於檢索和運行被存儲在機器可讀存儲介質220中的指令和/或用於執行指令222、224、226的功能的電子電路的任何硬體設備。類似地,如圖1的接口 115—樣,接口 215可以是諸如有線或無線網絡接口卡之類的用於與客戶端計算設備進行通信的任何電子組件。最後,如與圖1的存儲介質120—樣,機器可讀存儲介質220可以是任何電子、磁性、光學、或者包含或存儲諸如指令222、224、226之類的可執行指令的其他物理存儲設備。
[0021]在運行遠程桌面會話期間,操作狀態接收指令222可以經由遠程桌面會話從客戶端接收操作狀態信息。例如,如以上所詳述的,客戶端可以經由虛擬信道或其他傳輸機制來發送關於其操作參數的信息。接收指令222然後可以基於類型標識符以及由客戶端所發送的對應信息來解析接收到的狀態信息。
[0022]在接收到操作狀態信息之後,視覺指示插入指令224然後可以將操作狀態信息的視覺指示插入到遠程桌面GUI中。例如,插入指令224可以被配置成讀取接收到的操作狀態信息並且在被發送到客戶端以供顯示的遠程桌面內顯示每種類型的操作狀態信息的適當視覺表示。
[0023]插入指令224可以顯示操作狀態信息的任何視覺指示,如果該指示足以使客戶端的用戶觀察遠程桌面會話內的指示的話。例如,如果操作狀態信息是電池電量、無線信號、或可用的計算資源,那麼插入指令224可以輸出圖標或表示資源和其當前級別的其他圖形、作為數字的百分比、餅圖或曲線圖、文本通知等。作為另一個示例,如果操作狀態信息表示諸如重啟對話框之類的用戶界面元素,那麼插入指令224可以將類似或相同界面元素插入到遠程桌面中。在此類情況中,如以下結合圖3所詳述的,用戶可以在遠程桌面會話內選擇用戶界面元素並且將該輸入發送回到伺服器200。
[0024]最後,遠程桌面發送指令226可以向客戶端發送包括被插入的視覺指示的遠程桌面⑶I以供由客戶端顯示。例如,發送指令226可以壓縮和分組化遠程桌面並且經由虛擬信道或其他傳輸機制將其發送給客戶端。
[0025]圖3是為了允許在遠程桌面會話內在客戶端300上顯示操作狀態信息372而與伺服器計算設備350進行通信的示例性客戶端計算設備300的框圖。如以下所詳述的,客戶端300可以與伺服器350通信以發送操作狀態信息372,並且作為響應,接收包括狀態信息的視覺指示378的遠程桌面⑶I 376以供在可用顯示器上輸出。
[0026]如所圖示的,客戶端計算設備300可以包括圖形用戶界面305、感興趣的狀態信息307、客戶端收發器動態連結庫(DLL) 310、多個狀態監視DLL 320、和客戶端作業系統330。在一些實現中,可以將圖形用戶界面305、DLL 310和320、以及客戶端OS 330實現為被編碼在存儲介質上並由客戶端300的處理器所運行的一系列指令。注意的是,儘管以下被描述為動態連結庫,但是DLL 310,320的功能可以被實現為另一類型的庫、可執行應用、或任何其他可執行指令集。
[0027]客戶端300可以顯示被配置成接收用戶對要在遠程桌面會話內被監視和顯示的操作狀態信息的選擇的圖形用戶界面305。例如,GUI 305可以顯示能夠被監視的操作狀態信息的以及諸如一群複選框之類的對應的選擇界面元素的列表。用戶可以選擇感興趣的操作狀態信息,其然後可以被存儲為感興趣的狀態信息307以供由客戶端收發器DLL 310的後續訪問。
[0028]客戶端收發器DLL 310可以包括用於管理客戶端300的操作狀態信息的收集和顯示的指令集。在初始化遠程桌面會話時,收發器DLL 310可以建立與伺服器350的遠程會話收發器DLL 355的虛擬信道或其他通信機制。收發器DLL 310然後可以根據被存儲於感興趣的狀態信息307中的用戶選擇來啟動狀態監視DLL 320,以使得單獨的DLL 322、324、326被加載以監視關於每種類型的操作狀態信息的消息。例如,假設用戶已指示對接收關於客戶端300的電池、無線信號、和功率狀態的狀態信息感興趣。作為響應,客戶端收發器DLL 310可以啟動電池狀態DLL 322、網絡狀態DLL 324、和功率狀態DLL 326,每個都與用戶所選擇的操作狀態信息的類型之一相對應。
[0029]在啟動適當的狀態監視DLL之後,收發器DLL 310可以從每個監視DLL 320接收預定的柄,所述柄唯一地標識對應的DLL 320將收集的狀態信息。柄可以是例如一串字母數字字符、整數、或足以唯一地標識操作狀態信息的類型的任何其他信息。客戶端收發器DLL 310然後可以向伺服器350發送柄的陣列370。作為響應,如以下進一步詳細描述的,遠程會話收發器DLL 355可以啟動對應的狀態顯示應用360以處理要被後續地發送到伺服器350的操作狀態信息。
[0030]在操作期間,每個狀態監視DLL 320可以監視客戶端300的給定類型的操作狀態信息。特別地,每個監視DLL 320可以採用以上結合圖1的監視指令122所描述的方式來收集信息。例如,每個監視DLL 320可以被配置成監視在客戶端作業系統330內交換的與要被監視的特定類型的信息相關的消息。繼續先前的示例,電池狀態DLL 322可以監視電池的電荷的電量,網絡狀態DLL 324可以監視無線信號的級別,並且功率狀態DLL 326可以監視與客戶端300的操作模式相關的消息(例如,在OS 330中所顯示的重啟或關閉對話框)。
[0031]在收集所需的信息時,每個監視DLL 320可以將狀態信息連同對應的柄一起提供到客戶端收發器DLL 310。作為響應,客戶端收發器DLL 310然後可以將所收集的操作狀態信息372轉發到遠程會話收發器DLL 355。當發送狀態信息372時,客戶端收發器DLL 310還可以包括標識該特定類型的操作狀態信息的對應柄。
[0032]如所圖示的,伺服器計算設備350可以包括遠程會話收發器DLL 355和狀態顯示應用360。在一些實現中,DLL 355可以被實現為被編碼在存儲介質上的並且由伺服器350的處理器所運行的一系列指令。注意,儘管以下被描述為動態連結庫,但是DLL 355的功能可以被實現為其他類型的庫、可執行應用、或任何其他可執行指令集。
[0033]遠程會話收發器DLL 355可以包括用於管理由客戶端300所收集的操作狀態信息372的接收和顯示的指令集。在初始化遠程桌面會話時,收發器DLL 355可以建立與客戶端收發器DLL 310的虛擬信道或其他通信機制。收發器DLL 355然後可以從客戶端300接收柄的陣列370,其中每個柄標識要被發送到伺服器350的對應類型的操作狀態信息。作為響應,收發器DLL 355然後可以為每個柄來加載相應的過程360以管理用於接收操作狀態信息372以及輸出與狀態信息對應的視覺指示378的過程。
[0034]繼續以上的示例,假設客戶端300已啟動電池狀態DLL 322、網絡狀態DLL 324、和功率狀態DLL 326。響應於接收到標識操作狀態信息的柄370,收發器DLL 355可以讀取柄並且作為響應,啟動電池狀態應用362、網絡狀態應用364、和功率狀態應用366。
[0035]在操作期間,每個狀態顯示應用360可以基於與狀態信息關聯的柄來接收由收發器DLL 355所轉發的操作狀態信息372。作為響應,每個應用360然後可以採用以上結合圖2的視覺指示插入指令224所描述的方式來輸出操作狀態信息的視覺指示378。例如,電池狀態應用362可以顯示關於電池的電荷的電量的信息,網絡狀態應用364可以顯示關於無線信號的級別的信息,並且功率狀態應用366可以顯示與功率狀態消息對應的對話框或其他界面元素。在為每種類型的操作狀態信息插入了視覺指示378之後,伺服器350然後可以向客戶端300發送遠程桌面⑶I 376以供顯示。
[0036]在一些實施例中,所發送的遠程桌面⑶I 376可以包括能夠接收遠程桌面會話內的用戶輸入的視覺指示378。例如,假設由客戶端300所發送的狀態信息372標識了在OS330中被顯示的但是當前被遠程桌面會話所遮擋的諸如彈出消息、音量控制界面元素、或接收用戶輸入的任何其他界面元素之類的界面元素。作為響應,對應的狀態顯示應用360可以將可選擇的用戶界面元素作為視覺指示378插入到遠程桌面⑶I 376中。
[0037]由用戶在遠程桌面會話窗口內對指示378進行選擇、修改、或以其他方式與之交互時,由客戶端300所發送的⑶I輸入信息374可以標識遠程桌面會話內的窗口並且包括界面元素已被選擇、修改、或以其他方式交互的指示。下一步,響應於接收到該指示,伺服器350可以向客戶端300發送⑶I選擇通知380,從而識別客戶端OS 330內的窗口並且指示界面元素在遠程桌面會話內被選擇、修改、或以其他方式交互。最後,基於GUI選擇通知380,客戶端300可以將該指示轉發到客戶端OS 330內的適當窗口,以使得客戶端300可以激活或修改遠程桌面會話之外的被遮擋的用戶元素。
[0038]為了給出關於特定示例的更多細節,假設客戶端300已在客戶端OS 330中安裝了自動化更新,並且具有倒計時的自動化重啟消息已經在客戶端300上顯示但是當前被遠程桌面會話窗口遮擋。進一步假設向用戶給出了選擇「是」以繼續重啟或「否」以推遲重啟的選項。作為響應,客戶端300可以向伺服器350發送標識所請求的消息以及輸入的狀態信息 372。
[0039]功率狀態應用366然後可以接收重啟消息的通知並且作為響應在遠程桌面⑶I376內輸出類似的消息,以使得該消息被顯示在客戶端300上的遠程桌面會話窗口內並且因而對於用戶是可見的。用戶在遠程桌面會話窗口內選擇「是」或「否」任一時,客戶端300可以返回GUI輸入信息374,從而標識遠程桌面會話內的界面元素以及所選擇的響應。響應於輸入信息374,伺服器350可以向客戶端300返回選擇通知380,從而標識OS 330內的窗口以及所選擇的響應。最後,客戶端300可以向遠程桌面會話之外的所標識的窗口返回該響應,以使得客戶端300的重啟在不要求用戶最小化遠程桌面會話的情況下被觸發或推遲。
[0040]圖4A和5A分別是由客戶端計算設備100和300運行的示例性方法400、500的流程圖。類似地,圖4B和5B分別是由伺服器計算設備200和350運行的示例性方法450、550的流程圖。儘管以下參考這些計算設備描述了方法400、450、500、550的運行,但是用於運行這些方法的其他合適的組件對於本領域技術人員而言將是明顯的。方法400、450、500、550可以採用由處理器可執行的指令的形式和/或採用電子電路的形式來實現。
[0041]圖4A是由客戶端計算設備100運行以向伺服器發送操作狀態信息並且後續地在遠程桌面會話內顯示操作狀態信息的示例性方法400的流程圖。方法400可以開始於塊402並且繼續進行到其中客戶端100可以開始監視關於操作客戶端100的操作狀態信息的塊404。例如,客戶端100內的一個或多個過程可以監視在客戶端100的OS內交換的消息並且從而提取感興趣的操作狀態信息。
[0042]下一步,在塊406中,客戶端100可以經由與伺服器所建立的遠程桌面會話來向伺服器發送操作狀態信息。例如,客戶端100可以經由遠程桌面會話內的虛擬信道來發送操作狀態信息。
[0043]作為響應,在塊408中,客戶端100然後可以接收由伺服器所發送的遠程桌面。遠程桌面可以包括由伺服器基於塊406中所發送的操作狀態信息而插入的被顯示的狀態信息。例如,如以下結合圖4B的塊456所詳述的,伺服器可以插入諸如圖標、文本、界面元素等之類的每種類型的狀態信息的視覺表示。最後,在塊410處,客戶端100可以輸出包括在遠程桌面會話窗口內被顯示的狀態信息的所接收到的遠程桌面。然後可以重複塊404至410直到結束遠程桌面會話,在所述點處,方法400可以停止於塊412中。
[0044]圖4B是由伺服器計算設備200運行以從客戶端接收操作狀態信息並且後續地向客戶端發送包括被顯示的操作狀態信息的遠程桌面的示例性方法450的流程圖。方法450可以開始於塊452並且繼續進行到其中伺服器200可以從客戶端接收操作狀態信息的塊454。例如,伺服器200可以經由為與客戶端的遠程桌面會話而建立的虛擬信道來接收信息。在一些情況中,接收到的信息可以與當前被顯示在客戶端上的但是被遠程桌面會話窗口所遮擋的信息相對應。
[0045]下一步,在塊456中,伺服器200可以將操作狀態信息的視覺指示插入到遠程桌面GUI中。例如,伺服器200可以讀取接收到的操作狀態信息並且為每種類型的接收到的信息顯示適當的視覺表示。被顯示的指示可以是例如圖標、作為數字的百分比、餅圖或曲線圖、文本通知、或操作狀態信息的任何其他的視覺表示。
[0046]最後,在塊458中,伺服器200可以向客戶端發送包括視覺指示的遠程桌面⑶I以供由客戶端在遠程桌面會話窗口內輸出。然後可以重複塊454至458直到結束遠程桌面會話,在所述點處,方法450可以停止於塊460中。
[0047]圖5A是由客戶端計算設備300運行以向伺服器350發送操作狀態信息並且後續地在遠程桌面會話內顯示操作狀態信息的示例性方法500的流程圖。方法500可以開始於塊502並且繼續進行到其中客戶端300可以啟動遠程桌面客戶端的塊504。遠程桌面客戶端可以是適於使用RDP、ICA、PCoIP、或其他協議來與伺服器350進行通信以從伺服器350接收遠程桌面並且以向伺服器350發送輸入信息的任何應用。
[0048]在塊506中,在初始化客戶端應用時並且在與伺服器350連接之後,客戶端300然後可以加載包括客戶端收發器DLL 310的所有註冊過的虛擬信道DLL。在塊508中,每個被加載的DLL然後可以建立與在伺服器350上運行的對應DLL的虛擬信道。因而,客戶端收發器DLL 310可以建立與遠程會話收發器DLL 355的虛擬信道。[0049]在塊510中,客戶端收發器DLL 310然後可以基於用戶在圖形用戶界面305中的選擇來確定用戶感興趣的狀態信息。基於感興趣的狀態信息307,客戶端收發器DLL 310然後可以在塊512中啟動適當的狀態監視DLL 320。例如,客戶端收發器DLL 310可以啟動電池狀態DLL 322、網絡狀態DLL 324、和功率狀態DLL 326。每個狀態監視DLL 320然後可以返回柄並且在塊514中客戶端收發器DLL 310可以向伺服器350發送所述柄。
[0050]在塊504至514中,在初始化遠程桌面會話和對應的DLL之後,客戶端300可以在塊516中開始監視操作狀態信息。例如,每個狀態監視DLL 320可以監視在客戶端300的
OS330內交換的信息,並且可以從而提取適當的操作狀態信息。每個監視DLL 320然後可以將狀態信息連同對應的柄一起返回到客戶端收發器DLL 310。
[0051]在塊518中,客戶端收發器DLL 310然後可以向伺服器350發送包括每個柄的操作狀態信息。作為響應,在塊520中,客戶端300可以接收包括由伺服器350所插入的被顯示的狀態信息的遠程桌面。遠程桌面客戶端然後可以在遠程桌面會話窗口中輸出所接收到的遠程桌面。
[0052]在塊522中,遠程桌面客戶端可以確定遠程桌面會話是否已結束。如果會話仍然處於操作中,那麼方法500可以返回到其中客戶端300可以繼續監視操作狀態信息的塊516。否則,如果遠程桌面會話已結束,那麼方法500可以繼續到其中方法500可以停止的塊 524。
[0053]圖5B是由伺服器計算設備350運行以從客戶端300接收操作狀態信息並且後續地向客戶端300發送包括被顯示的操作狀態信息的遠程桌面的示例性方法550的流程圖。方法550可以開始於塊552並且繼續到其中伺服器350可以啟動遠程桌面伺服器的塊554。遠程桌面伺服器可以是適於使用適當的協議與客戶端300進行通信以向客戶端300發送遠程桌面並且以從客戶端300接收輸入信息的任何應用。
[0054]在塊556中,在初始化伺服器應用時並且在與客戶端300連接之後,伺服器350然後可以加載包括遠程會話收發器DLL 355的所有註冊的虛擬信道DLL。在塊558中,每個被加載的DLL然後可以建立與在客戶端300上運行的對應DLL的虛擬信道。因而,遠程會話收發器DLL 355可以建立與客戶端收發器DLL 310的虛擬信道。
[0055]在塊560中,遠程會話收發器DLL 355然後可以從客戶端300接收柄,所述柄表示在客戶端300上被啟動的狀態監視DLL。作為響應,在塊562中,收發器DLL 355然後可以啟動與接收到的柄對應的狀態監視應用360。例如,如果柄指示客戶端300已啟動電池狀態DLL 322、網絡狀態DLL 324、和功率狀態DLL 326,那麼伺服器350可以啟動電池狀態應用362、網絡狀態應用364、和功率狀態應用366。
[0056]在塊554至562中,在初始化遠程桌面會話和對應的DLL之後,伺服器350在塊564中可以開始接收操作狀態信息。例如,遠程會話收發器DLL 355可以接收具有關聯的柄的操作狀態信息,並且基於所述柄將該信息轉發到適當的狀態顯示應用360。
[0057]下一步,在塊566中,每個狀態顯示應用360可以輸出在遠程桌面中所接收到的操作狀態信息的指示。例如,每個應用360可以輸出對話、圖標、文本、或狀態信息的任何其他視覺表示。在塊568中,伺服器350然後可以向客戶端300發送包括被顯示的狀態信息的遠程桌面以供在遠程桌面會話中顯示。
[0058]在塊570中,遠程桌面伺服器可以確定遠程桌面會話是否已結束。如果會話仍然處於操作中,那麼方法550可以返回到其中伺服器350可以繼續處理所接收到的操作狀態信息的塊564。否則,如果遠程桌面會話已結束,那麼方法550可以繼續到其中方法550可以停止的塊572。
[0059]圖6是用於在遠程桌面會話內顯示客戶端計算設備300的電池狀態信息的操作600的示例性序列的框圖。儘管以下參考圖3的組件來描述,但是應該注意的是序列600對於包括與伺服器進行通信的客戶端的任何遠程桌面會話而言都可以是可適用的。在跟著的描述中,假定客戶端300和伺服器350已對遠程桌面會話以及用於交換操作狀態信息的所需組件進行初始化。
[0060]如所圖示的,該序列可以開始於塊1,其中電池狀態DLL 322可以檢測在OS 330內被廣播的指示電池狀態的消息。例如,在Microsoft Windows?作業系統中,當OS 330確定電池處於低電量處時,它生成了其中參數之一被設為PBT_APMBATTERYLOW的WM_P0WERBR0ADCAST消息。在OS 330內運行的每個應用從而能夠接收該消息並且確定電池處於低電量處。在該實例中,電池狀態DLL 322接收消息並且因而在塊2中將電池消息連同對應的柄(例如,「BATT_STATUS」)一起發送到客戶端收發器DLL 310。在塊3中,客戶端收發器DLL 310將具有柄的消息轉發到伺服器計算設備350。
[0061]在塊4中,遠程會話收發器DLL 355接收操作狀態信息、檢測柄(例如,「BATT_STATUS」)、以及因而將消息轉發到電池狀態應用362。在塊5中,電池狀態應用362解析消息、確定電池是低電量的、並且因而將具有圖標的消息輸出到遠程桌面GUI。在塊6中,伺服器計算設備350返回包括被插入的狀態信息的遠程桌面GUI。最後,在塊7中,客戶端計算設備300在遠程桌面會話窗口內顯示所接收到的遠程桌面。
[0062]根據前述,本文所公開的示例性實施例使得遠程桌面客戶端能夠接收和顯示關於其在遠程桌面會話窗口內的操作狀態的信息。以該方式,用戶可以在不必最小化遠程桌面會話或以其他方式與之交互的情況下保持對客戶端的作業系統的狀態、應用、和硬體的覺知。示例性實施例從而向用戶提供更接近模擬本地桌面的體驗的遠程桌面體驗。
【權利要求】
1.一種客戶端計算設備包括: 處理器用於: 經由與伺服器所建立的遠程桌面會話向所述伺服器發送所述客戶端計算設備的操作狀態信息, 從所述伺服器接收圖形信息,所述圖形信息包括由所述伺服器基於所述操作狀態信息而插入的被顯示的狀態信息,以及 在對於所述客戶端計算設備而言是可用的顯示器上輸出包括被顯示的狀態信息的所述圖形信息。
2.如權利要求1所述的客戶端計算設備,其中所述操作狀態信息包括電池狀態信息、網絡狀態信息、和功率狀態信息中的一個或多個。
3.如權利要求1所述的客戶端計算設備,其中所述處理器被進一步配置成: 在發起所述遠程桌面會話時向所述伺服器發送至少一個柄,每個柄標識要被後續發送到所述伺服器的特定類型的操作狀態信息,以及 當向所述伺服器發送所述操作狀態信息時包括特定的柄,所包括的柄標識所述特定類型的操作狀態信息。
4.如權利要求1所述的客戶端計算設備,其中所述處理器被進一步配置成: 通過監視在所述客戶端計算設備的作業系統內交換的預定消息來獲取所述操作狀態信息。
5.如權利要求4所述的客戶端計算設備,其中所述處理器被配置成基於用戶對用戶感興趣的操作狀態信息的選擇來訪問所述預定消息。
6.如權利要求4所述的客戶端計算設備,其中所述處理器被配置成加載單獨的動態連結庫(DLL)來針對每種類型的操作狀態信息監視所述預定消息。
7.如權利要求1所述的客戶端計算設備,其中: 被顯示的狀態信息包括與當前在所述客戶端計算設備上被所述遠程桌面會話所遮擋的界面元素對應的可選擇的用戶界面元素,以及所述處理器被進一步配置成: 向所述伺服器發送已選擇了所述可選擇的用戶界面元素的指示, 從所述伺服器接收指示在所述遠程桌面會話中已選擇了所述可選擇的用戶界面元素的被返回的通知,以及 基於所述被返回的通知來激活被遮擋的用戶界面元素。
8.—種通過由客戶端計算設備的處理器可執行的指令而編碼的機器可讀存儲介質,所述機器可讀存儲介質包括: 用於通過監視所述客戶端計算設備的至少一個屬性來獲取操作狀態信息的指令; 用於經由與伺服器所建立的遠程桌面會話向所述伺服器發送所述操作狀態信息的指令; 用於接收遠程桌面以供顯示的指令,所述遠程桌面包括由所述伺服器基於所述操作狀態信息而插入的被顯示的狀態信息;以及 用於在所述遠程桌面會話的窗口中顯示包括被顯示的狀態信息的所述遠程桌面的指令。
9.如權利要求8所述的機器可讀存儲介質,進一步包括: 用於顯示用戶界面的指令,所述用戶界面被配置成接收用戶對要被獲取的操作狀態信息的選擇, 其中用於獲取的指令基於用戶所選擇的操作狀態信息來監視所述至少一個屬性。
10.如權利要求8所述的機器可讀存儲介質,其中所述用於獲取操作狀態信息的指令包括多個動態連結庫(DLL),每個DLL與特定類型的操作狀態信息相對應。
11.一種伺服器計算設備包括: 處理器用於: 經由與客戶端所建立的遠程桌面會話來接收所述客戶端的操作狀態信息, 將所述操作 狀態信息的視覺指示插入到遠程桌面圖形用戶界面(GUI)中,以及 向所述客戶端發送包括所述視覺指示的遠程桌面⑶I以供由所述客戶端顯示。
12.如權利要求11所述的伺服器計算設備,其中所述處理器被進一步配置成: 在發起所述遠程桌面會話時從所述客戶端接收至少一個柄,每個柄標識要被發送到所述伺服器的對應類型的操作狀態信息,以及 為每個柄加載相應的過程,所述相應的過程接收所述對應類型的操作狀態信息並且基於所述操作狀態信息輸出對應的視覺指示。
13.如權利要求11所述的伺服器計算設備,其中所述處理器被進一步配置成: 將可選擇的用戶界面元素插入到所述遠程桌面GUI中,所述可選擇的用戶界面元素與當前在客戶端上被所述遠程桌面會話所遮擋的界面元素相對應, 從所述客戶端接收已選擇了所述可選擇的用戶界面元素的指示,以及向所述客戶端返回通知,所述通知指示已在所述遠程桌面會話中選擇了所述可選擇的用戶界面元素。
14.一種方法包括: 經由與客戶端所建立的遠程桌面會話來接收所述客戶端的操作狀態信息,其中所述操作狀態信息與在所述客戶端上顯示的當前被所述遠程桌面會話所遮擋的信息相對應;將所述操作狀態信息的視覺指示插入到遠程桌面圖形用戶界面(GUI)中;以及向所述客戶端發送包括所述視覺指示的遠程桌面GUI以供客戶端在所述遠程桌面會話中顯示。
15.如權利要求14所述的方法,其中所述操作狀態信息包括電池狀態信息、網絡狀態信息、和功率狀態信息中的一個或多個。
【文檔編號】G06F9/44GK103748553SQ201180073188
【公開日】2014年4月23日 申請日期:2011年6月28日 優先權日:2011年6月28日
【發明者】I.哈林, W.R.惠普爾, N.P.布朗 申請人:惠普發展公司,有限責任合夥企業

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀