Solucionar problemas do Slack em um ambiente Citrix

Você usa o Slack com o Citrix, mas não está conseguindo abrir o app para computadores? Saiba mais sobre esse problema e como corrigi-lo. 

 

Problemas para abrir o Slack

O que causa o problema

Os ambientes Citrix, como XenApp e XenDesktop, usam o redirecionamento de Dynamic-Link Library (DLL) para direcionar chamadas de API que realizam tarefas adicionais antes de chamar as APIs do sistema operacional Windows. 

Devido a uma incompatibilidade entre o app para computadores do Slack e as DLLs externas do Citrix, podem ocorrer falhas no carregamento do Slack em ambientes Citrix. 

 

O que acontece quando você abre o Slack

Quando você tenta abrir o app Slack, parece que ele não inicia. No entanto, o gerenciador de tarefas mostra os processos slack.exe em execução. Talvez o Slack também apareça na barra de tarefas, mas você não consegue interagir com o app. 

Normalmente, a inicialização do app acontecerá em cerca de 15 minutos, e ele passará a funcionar como esperado. No entanto, serão exibidos vários relatórios de travamento do processo slack.exe nesse período. 

 

Desativar o hooking de DLL para slack.exe

Para resolver problemas de inicialização do app Slack, é possível desativar o mecanismo de hooking do ambiente Citrix para processos específicos. Você pode adicionar os valores de registro manualmente ou executar um script do PowerShell para criar valores de registro automaticamente. 

Adicionar o valor de registro slack.exe manualmente

  1. No computador, aperte as teclas Win e R, depois digite regedit.exe
  2. Confira se estas chaves estão presentes e adicione todas as que não estiverem:
    HKEY_LOCAL_MACHINE/SOFTWARE/Citrix/CtxHook
    HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Citrix/CtxHook
    HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Citrix/CtxHook64
  3. Caso ainda não exista, adicione um valor de registro a cada chave acima:

    Nome: ExcludedImageNames
    Type: REG_SZ
    Valor: slack.exe

  4. Se ExcludedImageNames já existir, verifique se slack.exe foi adicionado aos nomes dos executáveis e se eles estão separados por vírgula, desta forma:
    App1.exe,App2.exe,slack.exe
  5. Verifique se esta chave está presente e adicione caso não esteja:
    HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/CtxUvi
  6. Se você adicionou a chave da etapa 5, inclua também este valor de registro:

    Nome: UviProcessExcludes
    Type: REG_SZ
    Valor: slack.exe

  7. Se UviProcessExcludes já existir, verifique se slack.exe foi adicionado aos nomes dos executáveis e se eles estão separados por ponto e vírgula, desta forma:
    App1.exe;App2.exe;slack.exe
Para saber mais, consulte a documentação oficial do Citrix.

 

Executar um script do PowerShell para criar valores de registro 

  1. Baixe este script do PowerShell.
  2. Quando o download terminar, clique com o botão direito no arquivo do script e selecione Executar com PowerShell
  3. Reinicie o computador e abra novamente o app Slack para computadores. 

Dica: se não conseguir executar o script do PowerShell devido à violação de uma política de execução, siga a documentação da Microsoft para atualizar as políticas do computador.