BRPI0610170A2 - técnicas para a provisão de opções de acessibilidade em sessões de terminais remotos - Google Patents

técnicas para a provisão de opções de acessibilidade em sessões de terminais remotos Download PDF

Info

Publication number
BRPI0610170A2
BRPI0610170A2 BRPI0610170-4A BRPI0610170A BRPI0610170A2 BR PI0610170 A2 BRPI0610170 A2 BR PI0610170A2 BR PI0610170 A BRPI0610170 A BR PI0610170A BR PI0610170 A2 BRPI0610170 A2 BR PI0610170A2
Authority
BR
Brazil
Prior art keywords
interface
session
component
client
rts
Prior art date
Application number
BRPI0610170-4A
Other languages
English (en)
Inventor
Brendan Mckeon
Makarand V Patwardhan
Nadim Y Abdo
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of BRPI0610170A2 publication Critical patent/BRPI0610170A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Train Traffic Observation, Control, And Security (AREA)

Abstract

São descritas técnicas relativas à capacidade de funcionalidade de acessibilidade em cenários de sessâo de terminais remotos. Em uma instância, um processo detecta uma solicitação a partir de uma funcionalidade de acessibilidade com relação a um elemento de imagem em uma sessão de terminal remoto. O processo envia uma consulta relativa à solicitação para um componente localizado em um dispositivo computacional que gerou o elemento de imagem. O processo também recebe uma resposta à consulta.

Description

"TÉCNICAS PARA A PROVISÃO DE OPÇÕES DEACESSIBILIDADE EM SESSÕES DE TERMINAIS REMOTOS"
FUNDAMENTOS DA INVENÇÃO
Auxiliares de acessibilidade tentam facilitar ouso do computador para as pessoas' que têm dificuldade de u-tilizar uma configuração de interface para o usuário padrão.Por exemplo, uma pessoa com problemas de visão pode quererrecursos de interface para o usuário maiores em tamanho e/ouaumentados, acompanhados de descrições verbais de modo que ousuário possa mais facilmente localizar e encaixar estes re-cursos.
Os produtos de suporte de sessão de terminais re-motos, tais como os Serviços de Terminais, oferecidos pelaMicrosoft® Corporation, permitem uma sessão de terminal re-moto entre um computador cliente e um computador servidor. Asessão de terminal remoto (RTS) pode permitir que o computa-dor cliente se conecte por rede ao computador servidor demodo a gerar uma área de trabalho remota no computador cli-ente. Tradicionalmente, em um cenário de área de trabalhoremota, um sistema operacional e/ou uma ou mais aplicaçõessão executadas no computador servidor de modo a gerar umainterface para o usuário (UI). Uma representação da interfa-ce UI, como, por exemplo, uma imagem de mapa de bits, é en-tão enviada para o cliente pela rede. Os dados de mapa debits têm um valor limitado a partir de uma perspectiva deacessibilidade. São desejadas soluções para a provisão deopções de acessibilidade para os cenários de sessão de ter-minal remoto.SUMARIO DA INVENÇÃO
São descritas técnicas relativas à possibilidadede funcionalidade de acessibilidade em cenários de sessão determinais remotos. Em uma instância, um processo detecta auma solicitação a partir de uma funcionalidade de acessibi-lidade com relação a um elemento de imagem em uma sessão determinal remoto. 0 processo envia uma consulta relativa àsolicitação para um componente localizado em um dispositivocomputacional que gerou o elemento de imagem. 0 processotambém recebe uma resposta para a consulta.
BREVE DESCRIÇÃO DOS DESENHOS
A Figura 1 ilustra um sistema exemplar para possi-bilitar uma funcionalidade de acessibilidade em cenários desessão de terminais remotos.
A Figura 2 ilustra um sistema exemplar para possi-bilitar uma funcionalidade de acessibilidade em cenários desessão de terminais remotos.
A Figura 3 ilustra um sistema exemplar para possi-bilitar uma funcionalidade de acessibilidade em cenários desessão de terminais remotos em mais detalhes.
A Figura 4 ilustra sistemas exemplares, dispositi-vos, e componentes em um ambiente para possibilitar uma fun-cionalidade de acessibilidade em cenários de sessão de ter-minais remotos.
A Figura 5 ilustra um diagrama de processo de umaimplementação exemplar para possibilitar uma funcionalidadede acessibilidade em cenários de sessão de terminais remo-tos.DESCRIÇÃO DETALHADA
Sumário Introdutório
As técnicas descritas abaixo se referem a cenáriosde sessão de terminais remotos e permitem auxiliares de a-cessibilidade (AA) em sessões de terminais remotos. No pre-sente documento, AA se refere a uma funcionalidade para a-cessar informações relativas a elementos ou objetos de ima-gem que podem ser exibidos para um usuário. Os auxiliares AAsão utilizados em múltiplos cenários de usuário. Por exem-pio, os auxiliares AA são utilizados em vários cenários decomando e controle de fala, em vários cenários de teste, eem vários cenários para ajudar o usuário com dificuldade devisão e/ou audição.
Em uma configuração de computador independente, ocomputador gera a uma interface para o usuário (UI) que com-preende um ou mais elementos de imagem, tais como icones,barras de ferramenta, etc. Um elemento de imagem pode serqualquer porção da interface UI associada a dados ou infor-mações de objeto. Um auxiliar AA que opera em uma configura-ção independente pode obter algumas ou todas as informaçõessobre elementos de imagem específicos da interface UI. 0 au-xiliar AA inclui, ou se comunica com, um meio para interagircom a interface UI, como, por exemplo, a interface para oauxiliar de acessibilidade - interface para o usuário (in-terface AA-UI) que facilita a obtenção das informações deelementos que imagem solicitadas. As informações relativas aum elemento de imagem são então utilizadas de alguma maneirano sentido de ajudar o usuário. Por exemplo, quando o usuá-rio coloca um cursor sobre um elemento de imagem que repre-senta um icone lixeira, o auxiliar AA solicita informaçõesrelativas àquele elemento de imagem. 0 auxiliar AA recebe eentende a informação relativa ao elemento de imagem especi-ficado. Exemplos do tipo de informação recebida incluem des-crições de botões, listas, menus, etc, e seus relacionamen-tos relativos, entre outras coisas. 0 auxiliar AA em seguidapode ajudar o usuário, por exemplo, no caso de uma dificul-dade visual, fazendo com que a palavra "lixeira" seja geradade forma audível para o usuário, como apenas um exemplo.
As sessões de terminal remoto (RTS) permitem que osistema operacional (OS) e/ou as aplicações que operam noservidor gerem uma interface UI incluindo um ou mais elemen-tos de imagem. As sessões de terminal remoto permitem aindaque uma saída ou elemento gráfico da interface UI seja enca-minhada para o computador cliente. Descrito de uma outra ma-neira, apenas uma representação da interface UI é ' enviadapara, e exibida em um computador cliente. A representação deinterface UI é exibida visivelmente para um usuário no com-putador cliente. Um.usuário no computador cliente pode ver einteragir com a representação da interface UI. 0 computador,cliente tem um nível reduzido de responsabilidade com rela-ção ao servidor no sentido de que o cliente é responsávelapenas pela exibição da representação recebida do servidor ese baseia em um suporte de entrada para o usuário pelo ser-vidor. 0 computador servidor processa a entrada de usuário eatualiza a interface UI no sentido de refletir a entrada deusuário, e envia uma representação atualizada da interfaceUI para o computador cliente. A partir de uma perspectivavisual do usuário, a representação de interface UI pode serindistinguivel a partir da interface UI em questão. No en-tanto, a partir de uma perspectiva de acessibilidade, a re-presentação de interface UI é associada a um nivel reduzidodé dados de objeto em comparação à interface UI correspon-dente em questão.
As presentes técnicas permitem ainda que um auxi-liar AA de um ambiente de sessão de terminal remoto obtenhauma funcionalidade similar à de uma configuração independen-te descrita acima. Por exemplo, o auxiliar AA pode solicitare receber informações relativas às porções especificas darepresentação de cliente da interface UI do servidor. A so-licitação é detectada e as informações reunidas e apresenta-das para o auxiliar AA. Algumas implementações detectam asolicitação do auxiliar AA, obtêm as informações correspon-dentes, e apresentam as informações para o auxiliar AA deuma maneira transparente para o auxiliar AA de modo que oauxiliar AA não precise nem mesmo estar ciente de que o mes-mo está funcionando em outra configuração diferente da con-figuração independente.
Por exemplo, considere a Figura 1 que ilustra umsistema 100 configurado para suportar uma sessão de terminalremoto entre um servidor 102 e um cliente 104 por uma rede106, e configurado de modo a permitir uma funcionalidade deacessibilidade com relação à sessão de terminal remoto. 0servidor 102 gera uma interface UI na forma de uma área detrabalho de servidor 110. Área de trabalho de servidor podecompreender um ou mais elementos de imagem, como, por exem-plo, o elemento de imagem 111 ilustrado no presente documen-to. Exemplos de elementos de imagem podem incluir icones,barras de ferramentas, menus, etc. A sessão de terminal re-moto gera uma representação da interface UI na forma de umaárea de trabalho remota 112 no cliente 104. A área de traba-lho remota, ao invés de incluir um ou mais elementos de ima-gem, é simplesmente uma representação dos elementos de ima-gem, faltando muitas ou todas as informações subjacentes as-sociadas aos elementos de imagem da interface UI do servi-dor. Por exemplo, o elemento de imagem 111 é representadoconforme indicado pela representação 113. Para um usuário, arepresentação de elemento de imagem 113 pode parecer essen-cialmente idêntica ao elemento de imagem 111, mais, a partirde uma perspectiva de acessibilidade, a representação de e-lemento de imagem 113 é associada a uma quantidade reduzidade informações associadas.
Um auxiliar de acessibilidade que funciona .com re-lação à área de trabalho remota 112do cliente pode solicitarinformações relativas a uma porção da área de trabalho remo-ta. A fim de atender a solicitação do auxiliar AA, pelo me-nos algumas implementações coletam informações- no servidorcom relação a uma porção correspondente da interface UI doservidor. Por exemplo, os dados de objeto relativos à porçãosolicitada da representação de interface UI do cliente sãoefetivamente recuperados no servidor a partir da interfaceUI do servidor em questão, e trazidos para o auxiliar AA.Por exemplo, suponha que o auxiliar AA solicite informaçõesrelativas a um elemento de imagem da área de trabalho remo-ta. A solicitação é detectada, e as informações relativas àporção solicitada da área de trabalho remota são obtidas eapresentadas para o auxiliar AA. Por exemplo, as informaçõespodem ser obtidas com relação a uma porção correspondente daárea de trabalho de servidor. As informações podem ser apre-sentadas para o auxiliar AA, de tal modo que o auxiliar AAnão precise possuir nenhuma funcionalidade além daquela queseria utilizada caso a área de trabalho remota seja geradalocalmente no cliente 74 ao invés de uma interface UI.
Para fins de ilustração, suponha, em um outro e-xemplo, que o auxiliar AA solicite informações relativas auma porção da área de trabalho remota 112 próxima ao cursor114. A solicitação do auxiliar AA é detectada e as informa-ções são obtidas do servidor 102 com relação à porção da á-rea de trabalho do servidor 110 próxima ao cursor 114. Asinformações obtidas, ou algumas derivadas das mesmas, sãosupridas para o auxiliar AA.
Responsivo às informações supridas, o auxiliar AApode permitir que uma saida perceptível.ao usuário relativaà acessibilidade 116 seja gerada no cliente 104 para o usuá-rio. A saida perceptível ao usuário relativa à acessibilida-de 116 pode incluir um sinal de áudio e/ou de video que au-menta a área de trabalho remota, conforme reconhecido por umperito na arte. Por exemplo, suponha, para fins de explana-ção, que o cursor 114 fique posicionado sobre um elemento deimagem na forma de um icone de navegador de Internet. Nestecaso, a saida perceptível ao usuário relativo à acessibili-dade 116 poderá ser manifestada como as palavras "navegadorde Internet" gerada de maneira audível para ou usuário.
Conforme mencionado acima, em pelo menos algumasimplementações, o auxiliar AA não precisa se quer estar ci-ente que apenas uma representação da interface para o usuá-rio existe no cliente 104 ou que o auxiliar AA está operandocom relação a uma sessão de terminal remoto. Dito de outramaneira, em algumas implementações, um subconjunto signifi-cante de informações relativas à área de trabalho remota étornado disponível localmente no cliente para o auxiliar AA.
Em algumas destas implementações, são suportadas técnicasque permitem que a informação seja tornada disponível de umamaneira transparente para o auxiliar AA. Por exemplo, as in-formações são feitas disponíveis localmente de uma maneiratransparente quando o auxiliar AA utiliza uma técnica supor-tada no sentido de acessar as informações. Em tais configu-rações, o auxiliar AA pode estar cego quanto à existência deuma sessão de terminal remoto e a ainda assim funcionar deforma consistente dentro de parâmetros esperados de funcio-nalidade de acessibilidade.
As implementações descritas acima e a seguir sãodescritas no contexto de um ambiente computacional conformecomumente encontrado nos dias de hoje. Vários exemplos podemser implementados por meio de instruções ou por meio de có-digos executáveis em computador, tais como, módulos de pro-grama, que são executados por um computador, como, por exem-plo, por um computador pessoal ou PC. De modo geral, os mó-dulos de programa incluem rotinas, programas, objetos, com-ponentes, estruturas de dados ou coisa do gênero que reali-zam tarefas particulares ou implementam tipos de dados abs-tratos em particular.
Vários exemplos podem ser implementados em outrasconfigurações de sistema de computador, além de em um PC.Por exemplo, várias implementações podem ser realizadas emdispositivo manuais, em sistemas multiprocessadores, em e-quipamentos eletrônicos programáveis pelo consumidor ou ba-seados em microprocessador, em PCs de rede, em minicomputa-dores, em computadores de grande porte, em telefones celula-res ou coisa do gênero. Além disso, conforme a tecnologiacontinua a evoluir, várias implementações podem ser feitasem classes de dispositivos a ainda ser identificadas. Porexemplo, conforme o custo de uma unidade de força de proces-samento continua a cair e as tecnologias sem fio se expan-dem, os dispositivos computacionais que lembram os telefonescelulares de hoje poderão realizar as funcionalidades de umPC, de uma câmara de video, de um telefone celular, e de a-inda outros equipamentos atuais em um único dispositivo mó-vel. Este único dispositivo poderá, em um cenário, atuar co-mo um servidor e, em outro cenário, atuar como um cliente.Este é apenas um dentre muitos exemplos existentes e em de-senvolvimento para as implementações descritas.
Os termos "servidor" e "cliente", conforme usadosno presente documento, não conotam qualquer capacidade rela-tiva destes dois dispositivos. 0 cliente poderá ter mais,menos, ou iguais capacidades de processamento que o servi-dor. Em contrapartida, no presente documento, os termos"servidor" e "cliente" descrevem o relacionamento relativodentre estes dois componentes. Por exemplo, a experiênciacomputacional de um primeiro dispositivo ou dispositivo ser-vidor é remota com relação a um segundo dispositivo ou dis-positivo cliente.
Embora as várias implementações possam ser incor-poradas em muitos tipos de ambientes operacionais conformesugeridos acima, uma descrição de apenas um ambiente exem-plar aparece na Figura 4, no contexto de um dispositivo com-putacional de uso geral exemplar e descrito em mais detalhesmais adiante no presente documento sob o titulo "AmbienteOperacional Exemplar".
IMPLEMENTAÇÕES E PROCESSOS EXEMPLARES
Considere a Figura 2, que ilustra um sistema 100Aconfigurado para permitir que funcionalidades de acessibili-dade sejam obtidas em uma sessão de terminal remoto. O sis-tema 100A é configurado de modo a suportar uma sessão determinal remoto entre um servidor 102A e um cliente 104A poruma rede 106A. O sistema 100A é também configurado de modo apermitir que uma funcionalidade de acessibilidade seja obti-da para o cliente 104A durante uma sessão de terminal remo-to. Nesta implementação de sistema, o servidor 102A incluium componente servidor de sessão RTS 202, um componente ser-vidor de suporte de sessão RTS auxiliar AA 204, um componen-te servidor de interface AA-UI 206, e um sistema operacionalservidor (OS) 208. O cliente 104A inclui um componente cli-ente de sessão RTS 212, um componente cliente de interfaceAA-UI 214, um componente cliente auxiliar AA 216, e um sis-tema OS cliente 218.
Nesta configuração, o servidor 102A é configuradopara gerar uma interface UI implementada na forma de uma á-rea de trabalho de servidor 110A para fins de ilustração. Aárea de trabalho de servidor é ilustrada, no presente docu-mento, para fins de explanação, porém, em muitos cenários,uma imagem visual da área de trabalho de servidor não é defato gerada no servidor. 0 componente servidor de sessão RTS202 e o componente cliente de sessão RTS 212 são configura-dos de modo a estabelecer um ou mais canais de comunicação220 entre o servidor 102A e o cliente 104A pela rede 106Apara. a sessão de terminal remoto. O componente servidor desessão RTS 202 é configurado para gerar uma representação daárea de. trabalho de servidor para exibição no cliente 104A.
A representação é enviada pelo canal de comunicação 110 eexibida no cliente 104A como uma área de trabalho remota112A neste exemplo. Nesta instância, a área de trabalho re-mota 112A fica dentro, e é envolvida por uma borda ou jane-la. A borda serve para distinguir a área de trabalho remota112A da área de trabalho de cliente gerada localmente 222 novideo de cliente 224. Em outras configurações, poderá nãoser prontamente aparente ao usuário quais componentes sãolocalmente gerados e quais componentes são remotamente gera-dos.
A sessão de terminal remoto, via o componente cli-ente de sessão RTS 212 e o componente servidor de sessão RTS202, é configurada ainda no sentido de permitir uma funcio-nalidade de acessibilidade com relação à sessão de terminalremoto. Por exemplo, a sessão de terminal remoto pode agru-par componentes de acessibilidade no cliente e/ou servidor.De maneira alternativa ou adicionalmente, a sessão de termi-nal remoto pode prover um meio de comunicação para os compo-nentes auxiliares AA localizados no servidor 102A e no cli-ente 104 a fim de comunicar informações relativas à interfa-ce UI desejadas para fins de acessibilidade.
O componente cliente auxiliar AA 206 é configuradopara solicitar informações da, ou de outra forma interagircom um a, interface para o cliente que ocupa a interface UI224 através de um componente cliente de interface UI-AA 214.O componente cliente de interface UI-AA 214 é uma interface,tal como uma interface de programa de aplicação (API) confi-gurada para interagir com a interface UI de modo a obter in-formações para um auxiliar AA. Em algumas configurações, umainterface de interface UI-AA é uma interface de programa deaplicação (API) e uma biblioteca de sistema configurada paraapresentar informações relativas a um elemento de imagem deinterface UI para uma aplicação de cliente. Em apenas uma detal configuração, a interface UI-AA apresenta as informaçõesde interface UI como uma árvore de nós na qual cada nó re-presenta um elemento de imagem de interface UI. Em pelo me-nos algumas configurações, a interface UI-AA é configuradade modo a prover acesso à estrutura, às propriedades, à in-teratividade, e aos eventos para os nós. Exemplos não limi-tantes potenciais de interfaces UI-AA incluem a Automação UIe a Acessibilidade Ativa da Microsoft (MSAA), ambas as quaissendo produtos de marca registrada oferecidos pela Micro-soft® Corp. Os versados na técnica devem reconhecer outrasinterfaces UI-AA adequadas, algumas das quais podendo sermais performáticas que outras com relação aos conceitos des-critos acima e a seguir.
Nesta instância, o video de cliente 224 inclui umaporção de área de trabalho de cliente 222 que vem a ser umainterface UI localmente gerada, e uma porção de área de tra-balho remoto 112A que é uma representação de uma interfaceUI remotamente gerada. Nesta instância, a área de trabalhoremota 112A é uma representação em mapa de bits da interfaceUI do servidor ou da área de trabalho de servidor 110A. Aárea de trabalho remota 112A contém uma quantidade reduzidade informação para fins de acessibilidade em comparação auma interface UI localmente gerada, como, por exemplo, a á-rea de trabalho de cliente 222.
Consistentemente com o sistema 100A, o componentecliente auxiliar AA 216 poderá solicitar e receber informa-ções relativas a uma porção especificada do video de cliente224. Quando as informações solicitadas se encontram disponí-veis localmente no cliente, as informações são obtidas nocliente e providas para o componente cliente auxiliar AA216. Tal instância pode ocorrer quando a solicitação do au-xiliar AA se refere à área de trabalho de cliente 222. Se asinformações solicitadas não se encontrarem disponíveis nocliente, como, por exemplo, uma solicitação direcionada parauma porção da área de trabalho remota 112, as informaçõessão obtidas remotamente. Por exemplo, nesta configuração emparticular, quando o cliente auxiliar AA 216 solicita infor-mações relativas à área de trabalho remoto 112A, a solicita-ção é detectada e entendida por um componente cliente, como,por exemplo, pelo cliente de sessão RTS 212, e é direcionadapara o servidor 102A. Nesta configuração em particular, asolicitação é direcionada para o componente servidor de su-porte de sessão RTS auxiliar AA 204 pela rede 106A. A soli-citação pode ser enviada pelos canais 220 associados à ses-são de terminal remoto ou pode ser separada "fora de banda"pelos canais.
O componente servidor de suporte de sessão RTS au-xiliar AA 204 atua em nome do componente cliente auxiliar AA216 e é configurado para obter as informações solicitadasrelativas à área de trabalho de servidor 110A. O componenteservidor de suporte de sessão RTS auxiliar AA 204 atua emcooperação com o componente servidor de interface UI-AA 206a fim de obter as informações no servidor 102A. O componenteservidor de suporte de sessão RTS auxiliar AA 204 se baseianas informações retornadas para o cliente e, em última ins-tância, para o componente cliente auxiliar 216 do cliente. Aconfiguração de sistema da Figura 2 é apenas uma configura-ção que permite ao componente cliente auxiliar AA 216 obterinformações de interface UI em uma sessão RTS independente-mente se as informações de interface UI existem no cliente104A ou no servidor 102A.
Em algumas configurações, o componente cliente au-xiliar AA 216 não precisa estar ciente se a solicitação serefere à interface UI localmente gerada ou a uma simples re-presentação de uma interface UI gerada no servidor ou remo-tamente. Em tais configurações, o meio para determinar se asolicitação se refere à interface UI de cliente ou a uma re-presentação de uma interface UI remota poderá existir nocliente 104A, como, por exemplo, dentro do componente clien-te de sessão 212. 0 componente cliente de sessão RTS nestecaso obtém as informações localmente ou remotamente, confor-me apropriado.
A Figura 3 oferece uma implementação não limitanteconsistente com os conceitos descritos acima e a seguir. AFigura 3 representa um sistema 100B que inclui um cliente104B e um servidor 102B, dentro dos quais uma funcionalidadede acessibilidade que opera no cliente 104B pode ser providacom as informações solicitadas relativas a uma interface UIquer a interface UI seja gerada em uma máquina, na qual afuncionalidade de acessibilidade está operando ou em uma má-quina remota. Esta configuração de sistema em particularprove um exemplo de como, com relação a uma sessão de termi-nal remoto, os componentes de sessão RTS podem prover umainfra-estrutura tanto no cliente como no servidor a fim deagrupar os componentes supridos auxiliares AA, os quais po-dem obter informações relativas à acessibilidade com refe-rência a uma UI.
Nesta implementação, os componentes de sessão RTSpodem prover componentes auxiliares AA com um meio para pas-sar uma solicitação para uma informação de interface UI de-sejada do cliente para o servidor e. podem prover um meio pa-ra passar as informações obtidas do servidor de volta para ocliente. Para fins de explanação, a Figura 3 divide os pro-cessos que ocorrem no cliente 104B em dois tipos de proces-so: um tipo de processo auxiliar AA 302; e um tipo de pro-cesso RTS 304. Ainda, os processos que ocorrem no servidor102B são indicados como o tipo de processo servidor 306. Osprocessos de servidor são agrupados em um único processo pa-ra facilitar a explanação e devido aos limites da página im-pressa. Em outras configurações, a interface para o servidor326 pode ser contida em um processo servidor separado e dis-tinto de outros componentes servidores e/ou processos. Alémdisso, podem existir múltiplas instâncias da interface UI deservidor com relação aos demais componentes listados no pro-cesso de servidor 306.
O sistema 100B inclui, associado ao processo auxi-liar AA 302,. um componente cliente auxiliar AA 216, e umcomponente de interface UI-AA 214B. É também incluido noprocesso auxiliar AA 302 um componente local de sessão RTSde interface UI-AA 308 que, na presente instância, vem a serum sub-componente do componente de interface UI-AA 214B. Ocomponente local de sessão RTS de interface UI-AA 308 atuade modo a estender a funcionalidade de interface UI-AA paraalém do cenário local ou independente.
Nesta implementação em particular, e com relaçãoao processo de cliente de sessão RTS 304, o sistema 100B in-clui um video de cliente 222B no qual é exibida uma repre-sentação de mapa de bits 310 de interface UI de servidor ede uma interface UI gerada pelo cliente 312. O processo decliente de sessão RTS 304 inclui ainda um componente clientede sessão RTS 212B, um componente em processo de sessão RTSde interface UI-AA 314, um componente de suporte de acessi-bilidade de sessão RTS 316, e um componente cliente de com-putador principal VC 318. 0 componente de suporte de acessi-bilidade de sessão RTS 316 contém informações sobre os auxi-liares de acessibilidade, o que facilita a comunicação entreos componentes clientes de sessão RTS e os componentes decliente AA.
Com relação ao processo servidor 306, a Figura 3inclui um componente servidor de sessão RTS 202B, um compo-nente remoto de sessão RTS de interface UI-AA 320, um compo-nente servidor de computador principal VC 322, um componenteservidor de interface UI-AA 206B, e uma. interface UI de ser-vidor 326. Coletivamente, o componente cliente de sessão RTS212B, o componente de suporte de acessibilidade de sessãoRTS 316, o componente cliente de computador principal VC318, o componente servidor de sessão RTS 202B, e o componen-te servidor de computador principal VC 322 servem para per-mitir ao componente cliente auxiliar AA 216B obter dados re-lativos aos elementos de imagem representados na representa-ção de mapa de bits 310. Uma vez que a representação de mapade bits é uma representação da interface UI de servidor 326,um âmbito mais amplo de informações relativas à acessibili-dade torna-se disponível a partir da interface UI de servi-dor. Os componentes acima mencionados permitem que informa-ções relativas à acessibilidade sejam obtidas a partir doservidor 102B e que as informações obtidas sejam retornadaspara o ou pelo componente cliente auxiliar AA 216. Os compo-nentes acima mencionados serão descritos em mais detalhes aseguir por meio de exemplo.
Descoberta
Nesta configuração em particular, após a partidado componente cliente de sessão RTS 212, o componente clien-te de sessão RTS carrega o componente de suporte de acessi-bilidade de sessão RTS 316 e o componente cliente de compu-tador principal VC 318 e faz com que o componente servidorde computador principal VC 322 seja carregado. Além disso, ocomponente cliente de sessão RTS expõe uma interface de ja-nela para o recebimento de comunicações, como, por exemplo,do componente cliente auxiliar AA 216B. A interface tambémpermite que o componente de interface UI-AA 214B carregue ocomponente em processo de sessão RTS de interface UI-AA 314para o processo cliente de sessão RTS 304. Quando a interfa-ce é exposta, o componente de interface UI-AA 214B poderáencontrar ou descobrir o componente cliente de sessão RTS212B. Por exemplo, em uma instância, o componente de inter-face UI-AA 214B encontra a alça de cliente de sessão RTS ouHWND enquanto passa por uma árvore de alça HWND associada.Uma alça HWND é uma alça que representa uma janela. Em umsistema operacional da marca Windows®, muitos elementos deinterface UI são implementados como janelas. Cada janela éassociada a uma alça ou HWND. De modo geral, os clientes au-xiliares AA são providos com uma árvore de tais alças a fimde representar várias janelas e seus relacionamentos. O cli-ente auxiliar AA usa a alça de janela para identificar umajanela sobre a qual quer obter mais informações a partir docomponente cliente de interface UI-AA 214B. Por exemplo, ocliente auxiliar AA pode estar navegando na árvore, ou ob-servando um foco de entrada relativo ao cliente de sessãoRTS, ou testando acertos para o cliente de sessão RTS. Res-ponsivo à detecção do cliente de sessão RTS, o componentecliente de interface UI-AA 214B ou o componente local desessão RTS de interface UI-AA 308 carrega o componente emprocesso de sessão RTS de interface UI-AA 314 no processo decliente de sessão RTS 304. Este é apenas um exemplo, outrasimplementações podem ser utilizadas para reconhecer qualqueroutro tipo de dados utilizado para representar uma interfaceUI em uma plataforma particular.
Em uma instância na qual alça HWND pertence aoprocesso cliente de sessão RTS, o cliente auxiliar AA 216A,através de seu componente local de isenção RTS de interfaceUI-AA 308, poderá enviar uma comunicação para o cliente desessão RTS 212 utilizando os a interface de janela providapelo cliente de sessão RTS 212B. Em tal instância, o compo-nente local de sessão RTS de interface UI-AA 308 envia umamensagem de processo, como, por exemplo, a mensagemWM_GETOBJECT para o cliente de sessão RTS 212B via a inter-face exposta.
O cliente de sessão RTS 212B encaminha a mensagemde processo do cliente auxiliar AA para o componente em pro-cesso de sessão RTS de interface UI-AA 314 e para o compo-nente de suporte de acessibilidade 316. De maneira responsi-va, o componente de suporte de acessibilidade expõe o pro-cesso cliente de sessão RTS de tal modo que o componente lo-cal de sessão RTS de interface UI-AA 308 possa carregar ocomponente remoto de sessão RTS de interface UI-AA 320 noservidor e acessar os canais virtuais associados. O compo-nente de suporte de acessibilidade permite ainda que o com-ponente em processo de sessão RTS de interface UI-AA 314 te-nha acesso a várias propriedades de serviços de terminal daárea de trabalho de cliente de sessão RTS que são utilizadaspelo componente em processo de sessão RTS de interface UI-AA314 para uma manipulação apropriada das solicitações. Estaspropriedades podem se referir às barras de paginação visí-veis, invisíveis ou habilitadas, entre outras. Por exemplo,o componente em processo de sessão RTS de interface UI-AA314 é responsável pelo pós-processamento de várias proprie-dades, tais como as propriedades locacionais descritas abai-xo. A fim de permitir tal pós-processamento, o componente emprocesso de sessão RTS de interface UI-AA 314 utiliza as in-formações coordenadas de janela que exibem a área de traba-lho de servidor no cliente de sessão RTS 212. Por exemplo,quando a janela de cliente de sessão RTS está usando barrasde paginação, o componente em processo de sessão RTS de in-terface UI-AA 314 utiliza as posições das barras de pagina-ção para mapear corretamente. Em um outro exemplo, em algunscenários de sessão de terminal remoto, a área de trabalho decliente exibida pelo cliente de sessão RTS 212 vem a ser umarepresentação de uma única janela no servidor, e não uma á-rea de trabalho inteira por si. O componente em processo desessão RTS de interface UI-AA 314 utiliza as informações re-lativas à esta configuração de sessão RTS, cuja janela deárea de trabalho de servidor a área de trabalho de clientede fato corresponde. 0 componente de suporte de acessibili-dade de sessão RTS 316 prove estas informações para o compo-nente em processo de sessão RTS de interface UI-AA 314.
Responsivo à mensagem de processo de cliente auxi-liar AA, o componente em processo de sessão RTS de interfaceAA-UI 314 verifica a legitimidade da mensagem de processo eabre um meio de comunicação e chama o componente local desessão RTS de interface AA-UI 308. Por exemplo, o componenteem processo de sessão RTS de interface AA-UI pode verificarse a mensagem WM_GETOBJECT inclui um parâmetro que indica sea mesma é do componente cliente de interface AA-UI 214B oude outro componente de acessibilidade. O componente em pro-cesso de sessão RTS de interface AA-UI 314 manipula a mensa-gem WM_GETOBJECT por meio da criação de um canal nomeado. Ocomponente de processo de sessão RTS de interface AA-UI emseguida retorna uma chave para o canal de volta para o cha-mador, isto é, para o componente local de sessão RTS de in-terface AA-UI 308. Este é apenas um exemplo de como o compo-nente local de sessão RTS de interface AA-UI 308 estabeleceum canal de comunicação com o componente em processo de ses-são RTS de interface AA-UI 314. Os versados na técnica devemreconhecer outras configurações.
Nesta instância, o componente local de sessão RTSde interface AA-UI 308 recebe a chave de canal retornada apartir da mensagem WM_GETOBJECT, e se conecta ao canal demodo a estabelecer comunicações entre o processo cliente au-xiliar AA 302 e o processo cliente de sessão RTS.Responsivo ao comando de cliente de sessão RTS212B acima mencionado, o componente cliente de computadorprincipal VC 318 envia um comando para iniciar o componenteservidor de computador principal VC 322. 0 componente servi-dor de computador principal VC faz com que o componente re-moto de sessão RTS de interface AA-UI 320 estabeleça um en-lace com o componente de processo de sessão RTS de interface314. Conforme acima mencionado, um meio de comunicação foiestendido a partir do processo cliente auxiliar AA para oprocesso cliente de sessão RTS, este meio de comunicação éagora efetivamente estendido para processos no servidor102B. Nesta instância, a conexão se estende do local de ses-são RTS de interface AA-UI 308 para o componente em processode sessão RTS de interface AA-UI 314, e em seguida, para ocomponente remoto de sessão RTS de interface AA-UI 320.
Solicitação de Informações
Uma solicitação de informação relativa à acessibi-lidade por parte do cliente auxiliar AA 204B é propagada docliente de interface AA-UI 214B do lado do cliente para ocomponente local de sessão RTS de interface AA-UI 308. Emuma instância, o componente local de sessão RTS de interfaceAA-UI constrói uma mensagem em byte contendo uma referênciaao elemento de imagem solicitado, uma lista de propriedadesa recuperar, e a um filtro que identifica os elementos deinteresse para o componente local de sessão RTS de interfaceAA-UI 308. Por exemplo, quando a solicitação é para os fi-lhos de um elemento de imagem em particular, o filtro pode-ria especificar "apenas elementos visiveis", desta maneira,ao invés de retornar todos os filhos dos elementos de imagemem particular, apenas os filhos visiveis serão retornados. 0componente local de sessão RTS de interface AA-UI 308 em se-guida envia a mensagem pelo canal nomeado para o componenteem processo de seleção RTS de interface AA-UI 314 e esperapor uma resposta.
O componente em processo de seleção RTS de inter-face AA-UI 314 recebe a mensagem, etiqueta a mesma com umaID a fim de identificar que componente local de sessão RTSde interface AA-UI enviou a mensagem. O componente em pro-cesso de seleção RTS de interface AA-UI 314 encaminha a men-sagem para o componente remoto de sessão RTS de interfaceAA-UI 320. O componente remoto de sessão RTS de interfaceAA-UI recebe a mensagem, desserializa a mensagem (incluindoa pesquisa da referência de objeto para determinar o elemen-to de interface UI alvo), e usa as interfaces API de inter-face AA-UI do componente servidor de interface AA-UI 206B afim de coletar as informações solicitadas via uma interfaceexposta pelo componente remoto de sessão RTS de interfaceAA-UI 320. O componente servidor de interface AA-UI 206B po-de compartilhar uma parte da ou toda a funcionalidade docomponente cliente de interface AA-UI 214B, de tal modo queo componente servidor de interface AA-UI 206B possa operarem nome do componente cliente de interface AA-UI 214B. Ocomponente servidor de interface AA-UI 206B obtém as infor-mações de acessibilidade solicitadas a partir da interfaceUI de servidor 326.
O componente remoto de sessão RTS de interface AA-UI 320 serializa as informações coletadas para uma mensagemde byte, e envia a mesma de volta pelo canal virtual para ocomponente em processo de seleção RTS de interface AA-UI314, com a identificação ID de etiqueta intacta.
O componente em processo de sessão RTS de interfa-ce AA-UI 314 encaminha a mensagem do componente remoto desessão RTS de interface AA-UI 320 via o canal virtual para ocomponente local de sessão RTS de interface AA-UI apropriadovia o canal nomeado, usando a identificação ID de•etiqueta afim de determinar o componente local de sessão RTS de inter-face AA-UI correto. Para facilitar a explanação, apenas umcomponente local de sessão RTS de interface AA-UI 308 é i-lustrado, porém, conforme mencionado abaixo, em algumas im-plementações, múltiplas instâncias do mesmo, assim como ou-tros, podem ser executados. O componente local de sessão RTSde interface AA-UI 308 recebe a mensagem de resposta e des-serializa a mensagem. Em algumas instâncias, o componentelocal de sessão RTS de interface AA-UI 308 pós-processa amensagem. Por exemplo, a mensagem pode ser pós-processadacom relação a valores de propriedade a fim de aplicar deslo-camentos, ou de outra forma, ajustar propriedades que sãoafetadas pelo agrupamento de sessões RTS. Quando qualquerpós-processamento apropriado é completado, o componente lo-cal de sessão RTS de interface AA-UI 308 envia as informa-ções processadas para o componente cliente de interface AA-UI 214B.
Um exemplo de tal pós-processamento se refere àsinformações relativas à localização do elemento solicitadono video. Por exemplo, suponha que o cliente auxiliar AA so-licita informações relativas à acessibilidade e sobre um e-lemento no topo extremo esquerdo da representação de mapa debits 310. As informações são obtidas no servidor com relaçãoa interface UI de servidor 326. No entanto, qualquer infor-mação de localização associada está relacionada à interfaceUI de servidor, que, nesta instância, é representada na re-presentação de mapa de bits 310 dentro da interface UI decliente 312. Nesta instância, as informações de localizaçãoda interface UI de servidor são ajustadas com relação ao vi-deo de cliente como um todo 224B. Sendo assim, nesta instân-cia, expressada qualitativamente, o elemento que fica naparte superior extrema esquerda da representação de mapa debits fica geralmente no meio do quadrante esquerdo superiordo video de cliente 224B. Os versados na técnica podem reco-nhecer como fazer as conversões de uma maneira quantitativa.Os ajustes relativos de posição ou outro pós-processamentopode ser realizado por meio de qualquer combinação dentre oscomponentes clientes. Por exemplo, o componente local desessão RTS de interface.AA-UI 308 ou o componente cliente deinterface AA-UI 214B pode processar tais ajustes.
Além disso, os recursos de processamento podem sersalvos em algumas implementações por meio da minimização donúmero de componentes que são lançados na partida de umasessão de terminal remoto. Os componentes restantes são lan-çados responsivos à alguma pista, como, por exemplo, uma so-licitação de informação por parte do cliente auxiliar AA216B. Outras implementações podem lançar e habilitar a maio-ria ou todos os componentes após a partida.
0 sistema 100B é descrito acima com relação a umcenário relativamente simples, no qual o video de cliente224B inclui uma única interface UI gerada pelo cliente 312 eo uma única representação de mapa de bits 310. Os versadosna técnica devem reconhecer que esta configuração de sistemaé prontamente escalável através de múltiplas facetas. Porexemplo, múltiplas aplicações de cliente AA podem ser execu-tadas simultaneamente com relação o video de cliente 224B.
De maneira alternativa ou adicionalmente, os componentes deservidor, como por exemplo, o componente remoto de sessãoRTS de interface AA-UI 320, podem lidar com um relacionamen-to de muitos para um com muitas sessões de terminais remotosem desenvolvimento. Ainda, -outras implementações podem em-pregar múltiplas representações de interfaces UI remotas novideo de cliente 224B. Para um usuário da máquina cliente,as representações podem ser claramente demarcadas por umaborda, tal como uma janela, ou ser indistinguivel a partirde uma interface UI localmente gerada.
Em uma estância de muitos clientes auxiliares AAsimultaneamente executados com relação à janela de clientede sessão RTS, são utilizados alguns meios para distinguirvários clientes auxiliares AA. Em uma configuração deste ti-po, um meio ou canal de comunicação é dedicado à cada clien-te auxiliar AA. Os vários canais podem conectar clientes au-xiliares AA individuais a um componente em processo de ses-são RTS de interface AA-UI 314 e a um cliente de computadorprincipal VC 318 compartilhados.O componente em processo de sessão RTS de interfa-ce AA-UI 314 pode ser configurado de modo a multiplexar so-licitações e eventos de cliente entre os canais por clientee o componente de cliente de computador principal VC. Em umaconfiguração desta, o componente em processo de sessão RTSde interface AA-UI 314 atribui identificadores únicos paracada cliente auxiliar AA e anexa os pacotes enviados para umlocal remoto de sessão RTS de interface AA-UI 320, que trataos valores como opacos, mantendo, porém, os mesmos intactos,e envia os mesmos de volta com os eventos de modo que o com-ponente em processo de sessão RTS de interface AA-UI saibaque cliente encaminhou o evento.
Em tal cenário, qualquer ajuste de coordenadas comrelação ao video de cliente 222B pode ser manipulado por ca-da componente local de sessão RTS de interface AA-UI do cli-ente. Tal configuração evita que o componente em processo desessão RTS de interface AA-UI tenha de entender o conteúdosemântico de quaisquer das mensagens que o mesmo está enca-minhando entre os canais e o VC. Finalmente, a mesma permiteque o componente remoto de sessão RTS de interface AA-UI se-ja um "cliente agnóstico", uma vez que o mesmo não precisater conhecimento dos clientes individuais ou monitorar umestado especifico de cliente em seu nome. Colocar a carga damultiplexação no componente local de sessão RTS de interfaceAA-UI também ajuda a manter o estado especifico de clientefora do componente remoto de sessão RTS de interface AA-UI.
Conforme mencionado acima, pelo menos algumas im-plementações podem lidar com cenários que envolvem múltiplasrepresentações de mapa de bits no vídeo de cliente 222B. Porexemplo, múltiplas aplicações remotas podem ser representa-das como representações de mapa de bits individuais no vídeode cliente 222B. Em algumas destas configurações, a funcio-nalidade de sessão RTS permite que a interface AA-UI criemúltiplos canais virtuais. Outra configuração poderá utili-zar um único canal virtual e um único componente local desessão RTS de interface AA-UI correspondente que se multi-plexa com relação às aplicações individuais de servidor re-presentadas como mapas de bits no vídeo de cliente 224B. Al-gumas configurações podem, em seguida, estabelecer um canalentre um componente local de sessão RTS de interface AA-UI eo componente em processo de seleção RTS de interface AA-UI,de tal modo que o próprio canal seja identificado com umaaplicação específica de servidor. Uma outra configuração po-de utilizar um canal por cliente, de tal modo que cada com-ponente local de sessão RTS de interface AA-UI use um canalpara falar com um componente em processo de sessão RTS deinterface AA-UI, independente contra qual janela de sessãoRTS o componente está trabalhando. 0 componente local desessão RTS de interface AA-UI acrescenta um parâmetro às su-as mensagens que permite que o componente em processo desessão RTS de interface AA-UI determine a qual janela a so-licitação se refere. Outras configurações podem utilizar aalça ou HWND para cada janela de aplicação do servidor comoum outro aspecto mapeável do estado de cliente de sessão RTSque pode ser mapeado pelo componente local de sessão RTS deinterface AA-UI.Por exemplo, o componente local de sessão RTS deinterface AA-UI pode enviar uma mensagem para o componenteem processo de sessão RTS de interface AA-UI incluindo a al-ça HWND da janela de cliente de sessão RTS local. 0 compo-nente em processo de sessão RTS de interface AA-UI pode res-ponder com informações sobre aquele estado de janela de cli-ente de sessão RTS, como, por exemplo, sua porta de visuali-zação, estado, e também alça HWND remota. A porta de visua-lização se refere às informações sobre a localização da áreade trabalho de cliente de sessão RTS. O componente de loca-lização de sessão RTS de interface AA-UI pode, em seguida,enviar esta alça HWND como um parâmetro em suas mensagenspara o componente remoto de sessão RTS de interface AA-UI.
Este recurso pode permitir que o componente em processo desessão RTS de interface AA-UI trate quase todas as mensagenscomo sendo opacas (diferente das que especificamente pergun-tam pelo estado de janela de sessão RTS). Isto permite que orecurso de um canal por cliente seja usado. Com efeito, ocomponente local de sessão RTS de interface AA-UI é respon-sável pela multiplexação entre múltiplas janelas de sessãoRTS. Em tal configuração, as chamadas que o componente localde sessão RTS de interface AA-UI faz para o componente remo-to de sessão RTS de interface AA-UI conterá um parâmetro dealça HWND indicando qual alça HWND deve ser tratada como ra-iz ou como janela de raiz. O termo "janela de raiz" referese à janela de nivel mais alto. Conforme mencionado acima,em alguns cenários, múltiplos clientes de sessão RTS repre-sentam janelas correspondentes na área de trabalho de servi-dor. Estas janelas não são encerradas pela janela de clientede sessão RTS de nivel mais alto, embora as mesmas represen-tem alguma janela na mesma sessão de servidor. Em tais ins-tâncias, pode haver duas solicitações independentes por par-te do cliente auxiliar AA para o componente em processo desessão RTS de interface AA-UI. Existem múltiplas maneiras dese lidar com tal cenário. Por exemplo, o componente em pro-cesso de sistema RTS de interface AA-UI pode usar um canalvirtual dedicado para cada janela de nivel mais alto com umcomponente remoto de sessão RTS de interface AA-UI. Em talconfiguração, o próprio canal identifica a qual janela ocliente auxiliar AA está se referindo. De maneira alternati-va ou adicionalmente, o componente em processo de sessão RTSde interface AA-UI poderia usar um único canal virtual com oservidor, e multiplexar as solicitações que chegam de váriasjanelas de cliente de sessão RTS de nivel mais alto. No pre-sente recurso, o componente em processo de sessão RTS de in-terface AA-UI utiliza dados adicionais para cada solicitaçãoa fim de identificar a qual janela o cliente de interfaceAA-UI está se referindo. Esta informação adicional poderáestar na forma da alça da janela do nivel mais alto (janelade raiz).
O sistema 100B é um exemplo de apenas uma configu-ração para permitir uma funcionalidade de acessibilidade emum cenário de sessão de terminal remoto. A configuração desistema 100 é também um exemplo de um sistema que serve paraadicionar componentes modulares ou de plug-ins em uma fun-cionalidade de base ao invés de re-escrever as instruções daprópria funcionalidade de base. Por exemplo, nesta instân-cia, vários componentes, tais como o componente de suportede acessibilidade de sessão RTS 316, e o componente de cli-ente de computador principal VC 318 são adicionados sobre afuncionalidade de base do componente cliente de sessão RTS212B como módulos ou plug-ins distintos. Entre outras vanta-gens, tal sistema pode ter um ciclo de desenvolvimento maiscurto e/ou mais confiável que a customização do componentecliente de sessão RTS a fim de prover a funcionalidade dese-jada. Ainda, os exemplos acima são descritos com relação auma área de trabalho remota completa. Em outras instâncias,a janela de cliente pode conter um subconjunto da área detrabalho remota em oposição à área de trabalho completa. Porexemplo, este subconjunto pode ser uma janela de aplicaçãoremota especifica, e a interface UI que aquela janela de a-plicação contem. A aplicação pode conter um ou mais elemen-tos de interface UI, é, por exemplo, pode incluir uma sub-árvore de elementos de interface UI.
AMBIENTE DE SISTEMA EXEMPLAR
A Figura 4 representa um ambiente de sistema oucomputacional exemplar 4 00 de modo a permitir uma funciona-lidade de acessibilidade em sessões de terminais remotos. Oambiente de sistema 400 inclui um sistema computacional deuso geral na forma de um dispositivo servidor ou servidor102. Os componentes do servidor 102 podem incluir, porém nãoestão limitados a, um ou mais processadores 404 (por exem-plo, quaisquer dentre microprocessadores, controladoras, oucoisa do gênero), uma memória de sistema 406, e um barramen-to de sistema 408 que acopla os vários componentes de siste-ma. 0 um ou mais processadores 404 processam várias instru-ções executáveis em computador de modo a controlar a opera-ção do servidor 102 e se comunicar com outros dispositivoseletrônicos ou computacionais. O barramento de sistema 408representa qualquer número dentre diversos tipos de estrutu-ras de barramento, incluindo um barramento de memória oucontroladora de memória, um barramento periférico, uma portagráfica acelerada, e um processador ou o barramento localque utiliza qualquer dentre uma variedade de arquiteturas debarramento.
O ambiente computacional 4 00 inclui uma variedadede meios legiveis em computador, os quais podem ser qualquermeio que seja acessível pelo servidor 102e e inclua meiosvoláteis ou não voláteis, meios removíveis ou não removí-veis. A memória de sistema 406 inclui um meio legível emcomputador na forma de uma memória volátil, como, por exem-plo, a memória de acesso aleatório (RAM) 410, e/ou uma memó-ria não volátil, como, por exemplo, a memória de leitura(ROM) 412. Um sistema básico de entrada / saida (BIOS) 414mantém as rotinas básicas que facilitam a transferência deinformações entre componentes dentro do servidor 102, como,por exemplo, durante uma partida, e fica armazenado na memó-ria ROM 412. A memória RAM 410 tipicamente contém módulos dedados e/ou de programa que são imediatamente acessíveis eme/ou presentemente operados por meio de um ou mais dentre osprocessadores 404.
O servidor 102 pode incluir outros meios de arma-zenamento em computador removíveis / não removíveis, volá-teis /não voláteis. À guisa de exemplo, uma unidade de dis-co rigido 416 lê de e grava em um meio magnético não volá-til, não removível (não mostrado), uma unidade de disco mag-nético 418 lê de e grava em um disco magnético não volátil,removível 420 (por exemplo, um "disco flexível"), e uma uni-dade de disco ótico 422 lê de e/ou grava em um disco óticonão volátil, removível 424, como, por exemplo, um CD ROM, umdisco versátil digital (DVD), ou qualquer outro tipo de meioótico. Neste exemplo, a unidade de disco rigido 416, a uni-dade de disco magnético 418, e a unidade de disco ótico 422são cada qual conectados ao barramento de sistema 408 pormeio de uma ou mais interfaces de meio de dados 426. As uni-dades de disco e os meios legíveis em computador associadosprovêm o armazenamento não volátil de instruções legíveis emcomputador, de estruturas de dados, de módulos de programa,e de outros dados para o servidor 102.
Qualquer número de módulos de programa pode serarmazenado no disco rigido 416, no disco magnético 420, nodisco ótico 424, na memória ROM 412, e/ou na memória RAM410, incluindo, à guisa de exemplo, um sistema operacional426, um ou mais programas de aplicação 428, outros módulosde programa 430, e dados de programa 432. Cada um dentre talsistema operacional 426, programas de aplicação 428, outrosmódulos de programa 430, e dados de programa 432 (ou algumacombinação dos mesmos), pode incluir uma modalidade dos sis-temas e métodos descritos no presente documento.
Um usuário pode fazer interface com o servidor 102via qualquer número de diferentes dispositivos de entrada,como, por exemplo, um teclado 434 e um dispositivo de indi-cação 436 (por exemplo, um "mouse"). Outros dispositivos deentrada 438 (não mostrados especificamente) podem incluir ummicrofone, um joystick, uma controladora de jogos, uma con-troladora, uma antena parabólica via satélite, uma porta se-rial, um leitor ótico (scanner), e/ou coisa do gênero. Estese outros dispositivos de entrada são conectados aos proces-sadores 404 via interfaces de entrada / saida 440 que sãoacopladas ao barramento de sistema 408, mas podem ser conec-tados por meio de outras estruturas de interface e barramen-to, como, por exemplo, uma porta paralela, uma porta de jo-gos, e/ou um barramento serial universal (USB).
Um monitor 442 ou outro tipo de dispositivo de i-magem pode ser conectado ao barramento de sistema 408 viauma interface, como, por exemplo, um adaptador de video 444.Além do monitor 442, outros dispositivos periféricos de sai-da podem incluir componentes, como, por exemplo, alto-falantes (não mostrados) e uma impressora 446, os quais po-dem ser conectados ao servidor 102 via as interfaces de en-trada / saida 440.
O computador 102 pode operar em um ambiente de re-de usando conexões lógicas com um ou mais computadores remo-tos, como, por exemplo, um dispositivo de cliente remoto oucliente 104. À guisa de exemplo, o cliente remoto 104 podeser um computador pessoal, um computador portátil, um servi-dor, um roteador, um computador de rede, um dispositivo derede não hierárquica, ou outro nó de rede comum, ou coisa dogênero. 0 cliente remoto 104 é ilustrado como um computadorportátil que pode incluir muitos ou todos os elementos e re-cursos descritos no presente documento com relação ao servi-dor 102.
As conexões lógicas entre o servidor 102 e o cli-ente remoto 104 são ilustradas como uma rede de área local(LAN) 450 ou uma rede remota geral (WAN) 452. Estes ambien-tes de rede são comuns em escritórios, em redes computacio-nais empresariais, nas intranets, e na Internet. Quando im-plementado em um ambiente de rede LAN, o servidor 102 é co-nectado a uma rede local 450 via uma interface de rede ouadaptador 454. Quando implementado em um ambiente de redeWAN, o computador 102 tipicamente inclui um modem 456 ou ou-tro meio para estabelecer comunicação na rede remota 452. 0modem 456, que pode ser interno ou externo ao servidor 102,pode ser conectado ao barramento de sistema 408 via as in-terfaces de entrada / saida 440 ou outros mecanismos apro-priados . As conexões de rede ilustradas são exemplares e ou-tros meios para se estabelecer enlaces de comunicação entre osdispositivos computacionais 402 e 448 podem ser utilizados.
Em um ambiente de rede, como, por exemplo, o ilus-trado no ambiente computacional 400, os módulos de programailustrados com relação ao servidor 102, ou porções do mesmo,podem ser armazenados em um dispositivo de armazenamento dememória remoto. À guisa de exemplo, os programas de aplica-ção remotos 458 são mantidos com um dispositivo de memóriado cliente remoto 104. Para fins de ilustração, os programasde aplicação e outros componentes de programa executáveis,como, por exemplo, o sistema operacional 426, são ilustradosno presente documento como blocos discretos, embora se reco-nheça que tais programas e componentes residem em vários mo-mentos em diferentes componentes de armazenamento do servi-dor 102, e são executados pelos processadores 404 do servi-dor.
PROCESSOS EXEMPLARES
A Figura 5 ilustra um processo exemplar 500 de mo-do a permitir a funcionalidade de acessibilidade em sessõesde terminais remotos. A ordem na qual o processo de descritonão deve ser considerada como uma limitação, qualquer númerode blocos de processo descritos podendo ser combinado emqualquer ordem de modo a implementar o processo. Além disso,o processo pode ser implementado em qualquer hardware, soft-ware, firmware, adequados, ou combinação dos mesmos.
Para fins de explanação, os blocos de processo aseguir são descritos no contexto de um cenário de sessão determinal remoto que define um lado de servidor e um lado decliente de uma sessão de terminal remoto. Assim sendo, napresente configuração de processo em particular, os blocosde processo 502, 504, 510, 512, e 514 ocorrem no lado doservidor, enquanto os blocos de processo 506, 508, e 516 o-correm no lado do cliente.
No bloco 502, o processo gera uma interface UI. Ainterface UI pode incluir um ou mais elementos de imagem,tais como, icones, barras de ferramenta, menus, etc. A in-terface UI pode ser utilizada para a sessão de terminal re-moto com relação a um cliente de sessão RTS. A interface UIpode ser uma interface UI completa, como, por exemplo, umaárea de trabalho de servidor, uma aplicação única, ou algumaoutra configuração.
No bloco 504, o processo envia uma representaçãoda interface UI para o cliente de sessão RTS. Em uma instân-cia como esta, a funcionalidade da sessão RTS faz com queuma representação de mapa de bits da interface UI seja gera-da e enviada para o cliente de sessão RTS.
No bloco 506, o processo detecta uma solicitaçãode uma funcionalidade de acessibilidade com relação a um e-lemento.de imagem da interface UI em uma sessão de terminalremoto. Nesta configuração de processo em particular, taldetecção ocorre no lado do cliente. Em outras configurações,tal detecção pode ocorrer no lado do servidor. A solicitaçãopode se referir a alguma porção da representação de interfa-ce UI recebida do servidor na sessão de terminal remoto. Asolicitação pode ser recebida diretamente de um componenteauxiliar AA ou de algum componente intermediário, como, porexemplo, de uma interface AA-UI que opera em cooperação como componente auxiliar AA. Em algumas configurações, a fun-cionalidade de acessibilidade solicitada pode reconhecer quea solicitação se refere a uma porção de uma interface UI queé simplesmente uma representação de uma interface UI. Em ou-tras configurações, a funcionalidade de acessibilidade soli-citada pode não ter nenhuma capacidade de distinguir entreuma interface UI presente e uma representação de uma inter-face UI. Nesta última configuração, uma funcionalidade podeser incluída no sentido de determinar se a solicitação serefere a uma interface UI presente, como, por exemplo, umainterface UI gerada localmente, ou uma representação de umainterface UI gerada remotamente (a partir da perspectiva damáquina de cliente). Esta funcionalidade poderá, então, tra-tar a solicitação localmente ou direcionar a solicitação pa-ra um componente remoto, conforme apropriado. 0 cenário aseguir pressupõe que a solicitação se refere a uma interfaceUI gerada remotamente ou a seu elemento de imagem.
No bloco 508, o processo envia uma consulta rela-tiva a uma solicitação para um componente localizado em umdispositivo computacional que gerou o elemento de imagem.Nesta instância, o dispositivo computacional que gerou o e-lemento de imagem é designado como o servidor. A consultapode ser enviada por um meio de comunicação facilitado pelasessão de terminal remoto, ou por um meio de comunicação es-tabelecido de forma independente.
No bloco 510, o processo recebe a consulta relati-va à interface UI no lado de servidor. No bloco 512, o pro-cesso acessa as informações de interface UI responsivas àconsulta. Em uma configuração como esta, as informações sãoobtidas a partir da interface UI de servidor via uma funcio-nalidade de interface AA-UI que opera no servidor e que éconfigurada de modo a obter as informações relativas à aces-sibilidade a partir da interface UI.
No bloco 514, as informações obtidas são enviadospara o cliente. As informações podem ser enviadas pelo mesmomeio de comunicação utilizado para enviar a solicitação nobloco 508 ou por algum outro meio de comunicação adequado.No bloco 516, o processo recebe a resposta à con-sulta no cliente. A resposta pode ser provida para funciona-lidade de acessibilidade. Em algumas instâncias, outro pro-cessamento é conduzido para a resposta antes de prover aresposta para a funcionalidade de acessibilidade. Por exem-plo, as informações referentes a uma localização relativa deum elemento de imagem podem ser ajustadas de modo a conside-rar outras facetas do video de cliente como um todo. Por e-xemplo, um elemento de imagem pode ser uma porção de uma re-presentação de interface UI recebida do servidor. 0 servidorprove os dados de localização relativos à interface UI deservidor, porém a representação da interface UI pode compre-ender apenas um subconjunto do video de cliente como um to-do, o qual pode também incluir componentes de interface UIgerados localmente e/ou outros componentes remotamente gera-dos. Assim sendo, tais dados de localização podem ser ajus-tados com relação ao video de cliente como um todo. Em algu-mas instâncias, as informações podem ser providas para umafuncionalidade de interface AA-UI que,atua em nome do auxi-liar AA. A interface AA-UI pode refinar ou, de alguma outramaneira, preparar as informações para uso por parte do auxi-liar AA.
Embora as implementações relativas à capacidade defuncionalidades de acessibilidade em sessões de terminaisremotos tenham sido descritas em uma linguagem especificaaos aspectos e/ou métodos estruturais, entenda-se que o as-sunto das reivindicações em apenso não se encontra necessa-riamente limitado aos aspectos específicos ou aos métodosdescritos. Em contrapartida, os aspectos e métodos específi-cos provêm exemplos de implementações para os conceitos des-critos acima e a seguir.

Claims (20)

1. Método, CARACTERIZADO pelo fato de compreenderas etapas de:- detectar uma solicitação a partir de uma funcio-nalidade de acessibilidade com relação a um elemento de ima-gem em uma sessão de terminal remoto;- enviar uma consulta relativa à solicitação paraum componente localizado em um dispositivo computacional quegerou o elemento de imagem; e- receber uma resposta à consulta.
2. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o elemento de imagem compre-ende uma porção de uma área de trabalho remota gerada para asessão de terminal remoto.
3. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que a funcionalidade de acessibi-lidade compreende uma funcionalidade de interface para o au-xiliar de acessibilidade - interface para o usuário (inter-face AA-ÜI).
4. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que a dita etapa de enviar com-preende a exposição de 'uma interface configurada para permi-tir a funcionalidade de acessibilidade de modo a estabelecerum canal virtual com o componente.
5. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de compreender ainda a capacidade dea funcionalidade de acessibilidade estabelecer comunicaçõescom um componente representativo de funcionalidade de aces-sibilidade localizado no dispositivo computacional que gerao elemento de imagem.
6. Método, de acordo com a reivindicação 5,CARACTERIZADO pelo fato de que a dita capacidade compreendea provisão de interfaces configuradas para permitir que afuncionalidade de acessibilidade se comunique com o compo-nente representativo de funcionalidade de acessibilidade.
7. Método, de acordo com a reivindicação 5,CARACTERIZADO pelo fato de que a dita capacidade compreendea provisão de interfaces para a funcionalidade de acessibi-lidade para lançar um ou mais componentes configurados demodo a permitir que a funcionalidade de acessibilidade secomunique com o componente representativo de funcionalidadede acessibilidade.
8. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que o elemento de imagem compre-ende um único objeto de interface para o usuário (UI), e pe-lo fato de compreender ainda a apresentação da resposta paraa funcionalidade de acessibilidade como nós de uma árvoreobjeto refletindo o objeto de interface UI.
9. Método, de acordo com a reivindicação 8,CARACTERIZADO pelo fato de que a dita apresentação compreen-de o processamento da resposta de modo a compensar pelo me-nos um fator relativo à sessão de terminal remoto.
10. Método, de acordo com a reivindicação 9,CARACTERIZADO pelo fato de que o pelo menos um fator compre-ende as etapas de ajustar os dados de localização obtidos apartir de uma fonte do elemento de imagem a fim de refletiruma localização do elemento de imagem relativo a um video decliente.
11. Método, de acordo com a reivindicação 1,CARACTERIZADO pelo fato de que a dita etapa de enviar com-preende o envio da solicitação por um canal virtual habili-tado pela sessão de terminal remoto.
12. Meio legivel em computador compreendendo ins-truções executáveis em computador que, quando executadas,realizam atos, o meio sendo CARACTERIZADO pelo fato de com-preender :- a geração de uma interface para o usuário (UI);- o envio de uma representação da interface UI pa-ra um cliente de sessão de terminal remoto;- o recebimento de uma consulta relativa à inter-face UI; e- o acesso às informações de interface UI respon-sivas à consulta.
13. Meio legivel em computador, de acordo com areivindicação 12, CARACTERIZADO pelo fato de que o acesso éfeito por meio de um componente de interface (AA-UI) de in-terface para o auxiliar de acessibilidade - interface para ousuário, componente este que é iniciado responsivo ao ditorecebimento.
14. Meio legivel em computador, de acordo com areivindicação 12, CARACTERIZADO pelo fato de que o recebi-mento é feito por meio de um componente que é iniciado res-ponsivo ao recebimento de uma solicitação de partida a par-tir do cliente de sessão de terminal remoto.
15. Meio legível em computador, de acordo com areivindicação 12, CARACTERIZADO pelo fato de que a dita in-terface UI compreende uma sub-árvore de elementos de inter-face UI.
16. Meio legível em computador, de acordo com areivindicação 12, CARACTERIZADO pelo fato de compreender a-inda o envio das informações de interface UI para o clientepor um meio de comunicação habilitado por uma sessão de ser-viços de terminal com o cliente de serviços de terminal.
17. Sistema, CARACTERIZADO pelo fato de compreender :- um meio para solicitar informações relativas àacessibilidade com relação a um elemento de imagem exibidoem uma sessão de terminal remoto; e- um meio para determinar se o elemento de imagemé remotamente gerado.
18. Sistema, de acordo com a reivindicação 17,CARACTERIZADO pelo fato de compreender ainda um meio parahabilitar a comunicação com uma fonte remota do elemento deimagem através da qual as informações relativas à acessibi-lidade podem ser obtidas.
19. Sistema, de acordo com a reivindicação 18,CARACTERIZADO pelo fato de que o meio para habilitar a comu-nicação prove pelo menos uma interface através da qual omeio para solicitar poderá acessar um meio de comunicaçãopara comunicação com a fonte remota.
20. Sistema, de acordo com a reivindicação 19,CARACTERIZADO pelo fato de que a interface permite que omeio para solicitar lance um componente dentro de um limitede processo do meio de modo a permitir comunicação.
BRPI0610170-4A 2005-05-27 2006-04-13 técnicas para a provisão de opções de acessibilidade em sessões de terminais remotos BRPI0610170A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/139,427 US7676549B2 (en) 2005-05-27 2005-05-27 Techniques for providing accessibility options in remote terminal sessions
US11/139.427 2005-05-27
PCT/US2006/013962 WO2006130242A2 (en) 2005-05-27 2006-04-13 Techniques for providing accessibility options in remote terminal sessions

Publications (1)

Publication Number Publication Date
BRPI0610170A2 true BRPI0610170A2 (pt) 2010-06-01

Family

ID=37464753

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0610170-4A BRPI0610170A2 (pt) 2005-05-27 2006-04-13 técnicas para a provisão de opções de acessibilidade em sessões de terminais remotos

Country Status (7)

Country Link
US (1) US7676549B2 (pt)
EP (1) EP1910932A2 (pt)
JP (1) JP2008542874A (pt)
CN (1) CN101506789A (pt)
BR (1) BRPI0610170A2 (pt)
MX (1) MX2007014552A (pt)
WO (1) WO2006130242A2 (pt)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7761800B2 (en) 2004-06-25 2010-07-20 Apple Inc. Unified interest layer for user interface
US8453065B2 (en) 2004-06-25 2013-05-28 Apple Inc. Preview and installation of user interface elements in a display environment
US8302020B2 (en) 2004-06-25 2012-10-30 Apple Inc. Widget authoring and editing environment
US7490295B2 (en) 2004-06-25 2009-02-10 Apple Inc. Layer for accessing user interface elements
US8543931B2 (en) 2005-06-07 2013-09-24 Apple Inc. Preview including theme based installation of user interface elements in a display environment
GB2428953A (en) * 2005-08-04 2007-02-07 Ibm Identifying remote objects on a client system GUI
US7743336B2 (en) 2005-10-27 2010-06-22 Apple Inc. Widget security
US9104294B2 (en) 2005-10-27 2015-08-11 Apple Inc. Linked widgets
US8543824B2 (en) 2005-10-27 2013-09-24 Apple Inc. Safe distribution and use of content
US7752556B2 (en) 2005-10-27 2010-07-06 Apple Inc. Workflow widgets
US7954064B2 (en) 2005-10-27 2011-05-31 Apple Inc. Multiple dashboards
US7707514B2 (en) 2005-11-18 2010-04-27 Apple Inc. Management of user interface elements in a display environment
US8954871B2 (en) 2007-07-18 2015-02-10 Apple Inc. User-centric widgets and dashboards
US8667415B2 (en) 2007-08-06 2014-03-04 Apple Inc. Web widgets
US20090113306A1 (en) * 2007-10-24 2009-04-30 Brother Kogyo Kabushiki Kaisha Data processing device
JP5256712B2 (ja) * 2007-11-28 2013-08-07 ブラザー工業株式会社 インストールプログラムおよび情報処理装置
JP4935658B2 (ja) * 2007-12-11 2012-05-23 ブラザー工業株式会社 ブラウザプログラムおよび情報処理装置
US9400661B2 (en) * 2008-02-29 2016-07-26 Adobe Systems Incorporated Embedded user interface
JP2010056966A (ja) * 2008-08-28 2010-03-11 Toshiba Corp 画像コンテンツ送信サーバ、画像表示装置、画像コンテンツ送信方法、及び、画像表示方法
US8516079B2 (en) * 2008-09-25 2013-08-20 Aten International Co., Ltd. Remote desktop control system using USB interface and method thereof
US8521926B2 (en) * 2008-09-25 2013-08-27 Aten International Co., Ltd. Remote desktop control system using USB interface and method thereof
US20100082733A1 (en) * 2008-09-30 2010-04-01 Microsoft Corporation Extensible remote programmatic access to user interface
US8578276B2 (en) * 2008-11-26 2013-11-05 Red Hat, Inc. Dynamic adaptive cross-site custom interface
US8180905B2 (en) * 2008-12-09 2012-05-15 Microsoft Corporation User-mode based remote desktop protocol (RDP) encoding architecture
KR101743122B1 (ko) 2009-11-27 2017-06-15 구글 인코포레이티드 클라이언트-서버 입력 방법 편집기 구조
US9268466B2 (en) * 2009-12-09 2016-02-23 Citrix Systems, Inc. Methods and systems for updating a dock with a user interface element representative of a remote application
US9250854B2 (en) 2011-08-25 2016-02-02 Vmware, Inc. User interface virtualization for remote devices
US9304662B2 (en) 2011-08-25 2016-04-05 Vmware, Inc. User interface virtualization techniques
US9965151B2 (en) 2011-09-09 2018-05-08 Cloudon Ltd. Systems and methods for graphical user interface interaction with cloud-based applications
US9606629B2 (en) 2011-09-09 2017-03-28 Cloudon Ltd. Systems and methods for gesture interaction with cloud-based applications
US9886189B2 (en) 2011-09-09 2018-02-06 Cloudon Ltd. Systems and methods for object-based interaction with cloud-based applications
US10063430B2 (en) 2011-09-09 2018-08-28 Cloudon Ltd. Systems and methods for workspace interaction with cloud-based applications
US9293107B2 (en) 2011-09-20 2016-03-22 Microsoft Technology Licensing, Llc Adjusting user interfaces based on entity location
WO2013045470A1 (en) 2011-09-29 2013-04-04 Telefonica, S.A. A method and a system to remotely share an application between electronic devices
US9542080B2 (en) 2012-04-25 2017-01-10 Vmware, Inc. User interface virtualization of context menus
CN104081333A (zh) * 2012-07-31 2014-10-01 惠普发展公司,有限责任合伙企业 包括均描绘图形用户界面的区域的输入镜头的远程显示区
WO2014076581A2 (en) * 2012-10-16 2014-05-22 AppToU Technologies Ltd. Systems and methods for graphical user interface interaction with cloud-based applications
US9116604B2 (en) * 2012-10-25 2015-08-25 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Multi-device visual correlation interaction
GB2523694B (en) * 2012-11-21 2020-11-11 Qatar Foundation Methods, remote access systems, client computing devices, and server devices for use in remote access systems
US20140372506A1 (en) * 2013-06-13 2014-12-18 Microsoft Corporation Managing and using remote applications on a mobile device
CN103491030B (zh) * 2013-09-12 2016-10-05 华为技术有限公司 一种数据处理方法及设备
US10621276B2 (en) 2013-10-24 2020-04-14 Wmware, Inc. User interface virtualization for web applications
US9339159B2 (en) 2014-06-13 2016-05-17 Aerus Llc Vacuum brush drive
US11045340B2 (en) * 2016-07-28 2021-06-29 Intuit Inc. Adding accessibility properties to a software application
CN108762865A (zh) * 2018-05-07 2018-11-06 北京明朝万达科技股份有限公司 一种信息拦截方法及装置
KR20210086263A (ko) * 2019-12-31 2021-07-08 한국과학기술원 이기종 다중 기기 상호작용을 위한 안전한 사용자 인터페이스 분산 방법
WO2022245338A1 (en) * 2021-05-18 2022-11-24 Hewlett-Packard Development Company, L.P. Multimedia content access within remote desktop session

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5175854A (en) * 1989-06-19 1992-12-29 Digital Equipment Corporation Inter-applicataion interface system
CA2068476C (en) * 1991-08-19 1996-07-23 Frank A. Mckiel, Jr. Audio user interface with stereo and filtered sound effects
US5461399A (en) * 1993-12-23 1995-10-24 International Business Machines Method and system for enabling visually impaired computer users to graphically select displayed objects
US6950991B2 (en) * 1995-11-13 2005-09-27 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6437803B1 (en) * 1998-05-29 2002-08-20 Citrix Systems, Inc. System and method for combining local and remote windows into a single desktop environment
US6144377A (en) * 1997-03-11 2000-11-07 Microsoft Corporation Providing access to user interface elements of legacy application programs
US6334157B1 (en) * 1997-03-11 2001-12-25 Microsoft Corporation Programmatically providing direct access to user interface elements of an application program
EP0915419A3 (en) * 1997-10-06 2003-11-12 Sun Microsystems, Inc. Remote object access
US6609159B1 (en) * 1998-11-30 2003-08-19 Semyon Dukach Methods, systems, and machine readable programming for interposing front end servers between servers and clients
US6331855B1 (en) 1999-04-28 2001-12-18 Expertcity.Com, Inc. Method and apparatus for providing remote access, control of remote systems and updating of display information
US6615176B2 (en) * 1999-07-13 2003-09-02 International Business Machines Corporation Speech enabling labeless controls in an existing graphical user interface
US7934251B2 (en) 1999-12-02 2011-04-26 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
JP3620716B2 (ja) * 2000-07-26 2005-02-16 日本電気株式会社 遠隔操作システムとその遠隔操作方法、及び遠隔操作プログラムを記録した記録媒体
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US6801224B1 (en) * 2000-09-14 2004-10-05 International Business Machines Corporation Method, system, and program for generating a graphical user interface window for an application program
JP4123712B2 (ja) * 2000-11-27 2008-07-23 株式会社日立製作所 通信処理方法ならびに通信処理プログラムが記録される記録媒体
US6665642B2 (en) * 2000-11-29 2003-12-16 Ibm Corporation Transcoding system and method for improved access by users with special needs
US7194411B2 (en) * 2001-02-26 2007-03-20 Benjamin Slotznick Method of displaying web pages to enable user access to text information that the user has difficulty reading
US6999912B2 (en) * 2001-03-13 2006-02-14 Microsoft Corporation Provisioning computing services via an on-line networked computing environment
US6922726B2 (en) * 2001-03-23 2005-07-26 International Business Machines Corporation Web accessibility service apparatus and method
US6834373B2 (en) * 2001-04-24 2004-12-21 International Business Machines Corporation System and method for non-visually presenting multi-part information pages using a combination of sonifications and tactile feedback
US7000185B1 (en) * 2001-04-30 2006-02-14 General Electric Capital Corporation Method and system for customization of a program
US7222177B2 (en) * 2001-05-21 2007-05-22 Hewlett-Packard Development Company, L.P. Methods and structure for implementing web server quality-of-service control
JP4717289B2 (ja) * 2001-09-10 2011-07-06 シャープ株式会社 計算機リモート操作システム
US7376695B2 (en) * 2002-03-14 2008-05-20 Citrix Systems, Inc. Method and system for generating a graphical display for a remote terminal session
US7103551B2 (en) * 2002-05-02 2006-09-05 International Business Machines Corporation Computer network including a computer system transmitting screen image information and corresponding speech information to another computer system
US7093199B2 (en) * 2002-05-07 2006-08-15 International Business Machines Corporation Design environment to facilitate accessible software
DE10242919A1 (de) * 2002-09-16 2004-03-25 Siemens Ag System zur virtuellen Prozessanbindung über Remote Desktop Protocol (RDP)
US7434167B2 (en) * 2002-09-30 2008-10-07 Microsoft Corporation Accessibility system and method
EP1406183A3 (en) * 2002-10-01 2004-04-14 Sap Ag Method and system for refreshing browser pages
US20040218451A1 (en) * 2002-11-05 2004-11-04 Said Joe P. Accessible user interface and navigation system and method
US7254786B2 (en) * 2002-11-05 2007-08-07 Microsoft Corporation System for transmitting and displaying icon resources group associated with remote application to a local computing system to facilitate virtualization of the remote application
US7644367B2 (en) * 2003-05-16 2010-01-05 Microsoft Corporation User interface automation framework classes and interfaces
US20040255289A1 (en) * 2003-06-11 2004-12-16 Citycites.Com Corp. Remote access software solution for rapidly deploying a desktop
US7340747B1 (en) * 2003-09-30 2008-03-04 Emc Corporation System and methods for deploying and invoking a distributed object model
US7275212B2 (en) * 2003-10-23 2007-09-25 Microsoft Corporation Synchronized graphics and region data for graphics remoting systems
US7441000B2 (en) * 2003-12-22 2008-10-21 International Business Machines Corporation Method for session sharing
US20060090139A1 (en) * 2004-10-21 2006-04-27 Microsoft Corporation Collection view objects for displaying data collection items in user interface elements
US20060168537A1 (en) * 2004-12-22 2006-07-27 Hochmuth Roland M Computer display control system and method
US20060168526A1 (en) * 2005-01-12 2006-07-27 Nokia Corporation Platform-specific application user interface remoting
US7614005B2 (en) * 2005-04-19 2009-11-03 International Business Machines Corporation Method for seamlessly crossing GUI toolkit boundaries

Also Published As

Publication number Publication date
JP2008542874A (ja) 2008-11-27
US20060271637A1 (en) 2006-11-30
CN101506789A (zh) 2009-08-12
EP1910932A2 (en) 2008-04-16
WO2006130242A2 (en) 2006-12-07
MX2007014552A (es) 2008-11-06
US7676549B2 (en) 2010-03-09
WO2006130242A3 (en) 2009-05-07

Similar Documents

Publication Publication Date Title
BRPI0610170A2 (pt) técnicas para a provisão de opções de acessibilidade em sessões de terminais remotos
US10915218B2 (en) Methods and systems for an intermediate graphical desktop sharing protocol
US20200034181A1 (en) Automated network configuration of virtual machines in a virtual lab environment
US8694886B2 (en) Providing dynamic context assist for a command line interface
US8082293B1 (en) Distributed hypermedia method and system for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document
RU2754720C1 (ru) Способ и устройство для отображения интерфейса
US20020112090A1 (en) Method, system, and product for a java-based desktop to provide window manager services on UNIX
ES2284448T3 (es) Sistema y procedimiento para transmitir datos desde una aplicacion de servidor a nodos cliente.
US20140075451A1 (en) Inter-process communication channel
JP2000076074A (ja) ウェブブラウザ・ウィンドウ内フレ―ム間通信方法
CN110083455B (zh) 图计算处理方法、装置、介质及电子设备
CN107003865A (zh) 利用远程应用的文件共享
US20080184199A1 (en) Method and apparatus for resolving client-side logic
JP2014529145A (ja) Guiナビゲーション、プロパティシート、およびオートタブコンプリーションを含むサーバ構成を管理するためのシステムおよび方法
US20040254978A1 (en) System and method of remotely accessing a computer system to initiate remote mainteneance and management accesses on network computer systems
US8990363B1 (en) Decomposition and recomposition for cross-platform display
US9124562B1 (en) Cloud-based decomposition and recomposition for cross-platform display
US9043646B2 (en) Client selectable server-side error resolution
EP3063673A1 (en) Establishment of state representation of a web page represented in a web browser
US11249771B2 (en) Terminal input invocation
US9106612B1 (en) Decomposition and recomposition for cross-platform display
JP2005115936A (ja) カスタマ・サポートのためのウェブ・ブラウザ・コントロール
US20070240108A1 (en) Multiclient framework for downloadable highly interactive n-layer medical applications
US20040015975A1 (en) Interface for distributed processing framework system
US20100262914A1 (en) Notifying blind users of live region updates

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE AS 5A E 6A ANUIDADES.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: REFERENTE AO DESPACHO 8.6 PUBLICADO NA RPI 2161 DE 05/06/2012.