O ícone "Conectado" não aparece na área de notificação quando você se conecta a um aplicativo remoto usando o Acesso à Web da Área de Trabalho Remota

Este artigo fornece uma solução alternativa para um problema em que o ícone Conectado não aparece na área de notificação quando você se conecta a um aplicativo remoto usando o Acesso Web da Área de Trabalho Remota.

Aplica-se a: Windows Server 2012 R2
Número de KB original: 977507

Sintomas

Quando você se conecta a um aplicativo remoto usando o Acesso Web da Área de Trabalho Remota (RD Web Access) em um computador que está executando o Windows Server 2008 R2, o ícone Conectado não aparece na área de notificação.

Observação

Quando você executa um aplicativo remoto pela primeira vez, o ícone Conectado aparece na área de notificação.

O WebSSO (Web Logon único) não funciona como esperado, causando um "prompt duplo" para credenciais em aplicativos iniciados por meio de RemoteApps publicados via Acesso Web da Área de Trabalho Remota no Windows Server 2008 R2.

Motivo

Esse problema ocorre quando há vários cookies não expirados no computador cliente.

Solução alternativa

Para contornar esse problema, exclua os cookies.

Para excluir os cookies no Windows Internet Explorer 8, siga estas etapas:

  1. Clique em Iniciar, clique em Painel de Controle, clique em Rede e Internet Connections e clique em Opções da Internet.
  2. Na guia Geral , clique em Excluir.
  3. Para excluir apenas os cookies, clique para selecionar a caixa Cookies marcar e clique para limpar todas as outras caixas de marcar.
  4. Clique em Excluir. Outra opção a não ser excluir os cookies é alterar o arquivo de script C:\windows\Web\RDWeb\Pages\renderscripts.js no servidor de Acesso Web rd.

Para alterar o arquivo de script C:\windows\Web\RDWeb\Pages\renderscripts.js, siga estas etapas:

  1. Faça logon no servidor de Acesso Web da Área de Trabalho Remota como membro no grupo administradores locais.

  2. Navegue até o arquivo jscript a seguir, clique com o botão direito do mouse e selecione Editar.

    C:\windows\Web\RDWeb\Pages\renderscripts.js

  3. Localize o implemento da função a seguir nesse arquivo jscript. função getCookieContents(strNameOfCookie)

  4. Modifique os códigos no arquivo jscript para corresponder ao seguinte:

    Código existente no arquivo Renderscripts.js:

    function getCookieContents(strNameOfCookie)
    {
        var objCookie;
        var objCookieName;
        var objCookieContents = null;
    
        if ( strNameOfCookie != null &&
        strNameOfCookie != "" &&
        document.cookie.length > 0 )
        {
            var objCookies = document.cookie.split(";");
            for (var iIndex = 0; iIndex < objCookies.length; iIndex++)
            {
                objCookie = objCookies[iIndex];
                objCookieName = objCookie.substring(0, strNameOfCookie.length);
            }
        }
    }
    

    Altere a seção acima no arquivo Renderscripts.js para corresponder ao seguinte:

    // Add a function called trim as a method of the prototype
    // object of the String constructor.
    String.prototype.trim = function()
    {
        // Use a regular expression to replace leading and trailing
        // spaces with the empty string
        return this.replace(/(^\s*)|(\s*$)/g, "");
    }
    // End of the new-added function
    
    function getCookieContents(strNameOfCookie)
    {
        var objCookie;
        var objCookieName;
        var objCookieContents = null;
    
        if ( strNameOfCookie != null &&
        strNameOfCookie != "" &&
        document.cookie.length > 0 )
        {
            var objCookies = document.cookie.split(";");
            for (var iIndex = 0; iIndex < objCookies.length; iIndex++)
            {
                objCookie = objCookies[iIndex];
                objCookie = objCookie.trim(); //Calling the new-added function
                objCookieName = objCookie.substring(0, strNameOfCookie.length);
            }
        }
    }
    

O problema foi corrigido?

Verifique se o problema foi corrigido. Se o problema for corrigido, você terminará com esta seção. Se o problema não for corrigido, você poderá entrar em contato com o suporte.

Mais informações

Esse problema pode ocorrer quando as seguintes condições forem verdadeiras:

  • O Acesso à Web da Área de Trabalho Remota está em um subdomínio que tem um domínio pai.
  • O domínio pai ou qualquer outro subdomínio grava um cookie que tem o domínio definido como o nível de domínio pai. Esse comportamento compartilha o cookie entre todos os subdomínios.

Se o Acesso à Web da Área de Trabalho Remota for colocado no nível de domínio pai, o ícone de conexão será exibido na área de notificação. Além disso, o recurso SSO (logon único), o aplicativo remoto e a Conexão da Área de Trabalho funcionam conforme o esperado quando você se conecta ao aplicativo remoto.

Além disso, isso pode ocorrer quando há informações adicionais de cookie contidas no cookie apresentado de volta ao cliente pelo servidor Web.