¿Cuáles son las razones por las que fallan las canalizaciones con nombre locales de Windows?

¿Cuáles son las razones por las que fallan las canalizaciones con nombre locales de Windows?

He estado trabajando duro en esto todo el día y estoy estancado. Esta mañana nuestros colegas asiáticos me llamaron porque un complemento de SolidWorks para nuestro sistema de gestión de datos de productos no podía comunicarse con la aplicación principal local. El problema afecta a las computadoras de los usuarios finales en un dominio de Windows. Usamos las utilidades READPIPE y MAKEPIPE de la caja de herramientas del servidor SQL para descubrir que el problema subyacente era la función de canalización de Windows.

  • La utilidad MAKEPIPE crea una tubería y está esperando un cliente. La utilidad READPIPE devuelve: "Error al abrir la tubería. Estado 53". De acuerdo ahttp://support.microsoft.com/kb/110905significa que no se encontró el nombre de la red. En mi computadora local, las tuberías envían un "hola" desde READPIPE a MAKEPIPE sin problemas.
  • El proceso del servidor que habilita las canalizaciones con nombre se está ejecutando.
  • La configuración en HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters se ve bien. Configuración de firewall sin tuberías.
  • El problema afecta a algunos usuarios pero no a todos. No realizamos cambios en los grupos de dominio, excepto en algunos grupos de red compartida.
  • Inicié sesión como administrador y las tuberías aún no funcionan.

¡Cualquier ayuda es apreciada! Gracias.

Respuesta1

Se necesitaron 1,5 días para resolverlo en cada caso. Aquí para documentación.

Síntomas

  • Arrastrar y soltar en aplicaciones no funciona.
  • La comunicación entre procesos, por ejemplo, entre la aplicación principal y los complementos, no funciona.

Causas / antecedentes

La comunicación entre procesos se implementa para algunas aplicaciones a través de canalizaciones con nombre de Windows (que no deben confundirse con las canalizaciones de estilo UNIX). Consulte la documentación de MSDN:http://msdn.microsoft.com/en-us/library/aa365590.aspx

Puede haber diferentes causas por las que las canalizaciones de nombres de Windows no funcionen. Para verificar que las tuberías son la causa del problema, se pueden utilizar las herramientas MAKEPIPE y READPIPE. Este artículo de KB describe el procedimiento de prueba:http://support.microsoft.com/kb/68941 El explorador de procesos de la herramienta Sysinternals también puede resultar útil para buscar qué canalizaciones están abiertas actualmente. Utilice la opción "Buscar -> Buscar identificador o DLL..." e ingrese el patrón "\Device\NamedPipe\". Le mostrará qué procesos tienen qué tuberías abiertas.http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

Solucionar problemas

Causa 1: la aplicación está bloqueada por el firewall de Pipes

Windows puede impedir que las aplicaciones utilicen canalizaciones con nombre. Este firewall normalmente no está habilitado y se configura a través del registro. Consulte el artículo de soporte de MS aquí:http://support.microsoft.com/kb/925890. Verifique que el firewall de tuberías no esté habilitado o agregue Keytech y todos los complementos a la lista de aplicaciones permitidas.

Causa 2: El servicio para compartir archivos e impresoras no está habilitado.

Las canalizaciones con nombre están habilitadas por el proceso que también controla el uso compartido de archivos e impresoras. Verifique que este proceso se esté ejecutando utilizando la herramienta Servicios de Windows. El nombre del servicio se muestra como "Servidor" en la lista de servicios. El nombre del servicio es LanmanServer y el EXE es C:\Windows\system32\svchost.exe -k netsvcs

Causa 3: El firewall de Windows está bloqueando LanmanServer

El firewall de Windows puede bloquear canalizaciones con nombre incluso cuando solo se utilizan para la comunicación entre procesos en la misma máquina. Especialmente las reglas de dominio y firewall local pueden causar un conflicto. Dos entradas en la lista "Programas permitidos del Firewall de Windows" indican un conflicto. En la mayoría de los casos, este problema se puede resolver utilizando la ventana "Verificar el estado del firewall". Si esta ventana muestra una opción para configurar las reglas de firewall recomendadas, las tuberías a menudo se pueden desbloquear usando esta opción. En combinación con las reglas del firewall del dominio, a veces es necesario desconectar primero la PC del dominio y luego permitir el servicio para compartir archivos e impresoras.

información relacionada