Quais são os motivos para a falha dos pipes nomeados locais do Windows?

Quais são os motivos para a falha dos pipes nomeados locais do Windows?

Tenho trabalhado duro nisso o dia todo e estou preso. Esta manhã, nossos colegas asiáticos me ligaram porque um complemento do SolidWorks para nosso sistema de gerenciamento de dados de produtos não conseguiu se comunicar com o aplicativo principal local. O problema afeta computadores de usuários finais em um domínio do Windows. Usamos os utilitários READPIPE e MAKEPIPE da caixa de ferramentas do SQL Server para descobrir que o problema subjacente era o recurso de pipe do Windows.

  • O utilitário MAKEPIPE cria um pipe e aguarda um cliente. O utilitário READPIPE retorna: "Falha ao abrir o Pipe. Status 53." De acordo comhttp://support.microsoft.com/kb/110905isso significa que o nome da rede não foi encontrado. No meu computador local o pipes envia um "olá" do READPIPE para o MAKEPIPE sem problemas.
  • O processo do servidor que habilita pipes nomeados está em execução.
  • As configurações em HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters parecem corretas. Nenhuma configuração de firewall de pipes.
  • O problema afeta alguns usuários, mas não todos. Não fizemos alterações nos grupos de domínio, exceto em alguns grupos de compartilhamento de rede.
  • Entrei como administrador e ainda assim os pipes não funcionam.

Qualquer ajuda é apreciada! Obrigado.

Responder1

Foram necessários 1,5 dias para descobrir cada caso. Aqui para documentação.

Sintomas

  • Arrastar e soltar em aplicativos não funciona.
  • A comunicação entre processos, por exemplo, entre o aplicativo principal e os complementos, não funciona.

Causas / antecedentes

A comunicação entre processos é implementada para alguns aplicativos por meio de pipes nomeados do Windows (não deve ser confundido com pipes estilo UNIX). Consulte a documentação do MSDN:http://msdn.microsoft.com/en-us/library/aa365590.aspx

Pode haver diferentes causas para os canais de nomes do Windows não funcionarem. Para verificar se os pipes são a causa do problema, as ferramentas MAKEPIPE e READPIPE podem ser utilizadas. Este artigo da base de conhecimento descreve o procedimento de teste:http://support.microsoft.com/kb/68941 O explorador de processos da ferramenta Sysinternals também pode ser útil para procurar quais pipes estão abertos no momento. Use a opção "Find -> Find Handle or DLL..." e digite o padrão "\Device\NamedPipe\". Ele mostrará quais processos têm quais pipes abertos.http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

Solucionar problemas

Causa 1: o aplicativo está bloqueado pelo firewall do Pipes

O Windows pode impedir que aplicativos usem pipes nomeados. Este firewall normalmente não está habilitado e é configurado através do registro. Veja o artigo de suporte da MS aqui:http://support.microsoft.com/kb/925890. Verifique se o firewall dos pipes não está habilitado ou adicione Keytech e todos os addins à lista de aplicativos permitidos.

Causa 2: O serviço de compartilhamento de arquivos e impressoras não está habilitado.

Os pipes nomeados são habilitados pelo processo que também controla o compartilhamento de arquivos e impressoras. Verifique se este processo está em execução usando a ferramenta Windows Services. O nome do serviço é mostrado como “Servidor” na lista de serviços. O nome do serviço é LanmanServer e o EXE é C:\Windows\system32\svchost.exe -k netsvcs

Causa 3: o firewall do Windows está bloqueando o LanmanServer

O firewall do Windows pode bloquear pipes nomeados mesmo quando eles são usados ​​apenas para comunicação entre processos na mesma máquina. Especialmente as regras de firewall locais e de domínio podem causar conflitos. Duas entradas na lista “Programas permitidos pelo Firewall do Windows” indicam um conflito. Na maioria dos casos, esse problema pode ser resolvido usando a janela “Verificar status do firewall”. Se esta janela mostrar uma opção para definir regras de firewall recomendadas, os pipes poderão ser desbloqueados usando esta opção. Em combinação com as regras de firewall do domínio, às vezes é necessário desconectar primeiro o PC do domínio e depois permitir o serviço de compartilhamento de arquivos e impressoras.

informação relacionada