로컬 Windows 명명된 파이프가 실패하는 이유는 무엇입니까?

로컬 Windows 명명된 파이프가 실패하는 이유는 무엇입니까?

하루종일 이것저것 열심히 했는데 막혔어요. 오늘 아침 제품 데이터 관리 시스템용 SolidWorks 애드인이 로컬 기본 응용 프로그램과 통신할 수 없어서 아시아 동료들이 저에게 전화를 했습니다. 이 문제는 Windows 도메인의 최종 사용자 컴퓨터에 영향을 미칩니다. 우리는 SQL 서버 도구 상자의 READPIPE 및 MAKEPIPE 유틸리티를 사용하여 근본적인 문제가 Windows 파이프 기능에 있다는 것을 알아냈습니다.

  • MAKEPIPE 유틸리티는 파이프를 생성하고 클라이언트를 기다리고 있습니다. READPIPE 유틸리티는 "파이프를 열지 못했습니다. 상태 53"을 반환합니다. 에 따르면http://support.microsoft.com/kb/110905이는 네트워크 이름을 찾을 수 없다는 의미입니다. 내 로컬 컴퓨터에서 파이프는 문제 없이 READPIPE에서 MAKEPIPE로 "hello"를 보냅니다.
  • 명명된 파이프를 활성화하는 서버 프로세스가 실행 중입니다.
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters 아래의 설정은 괜찮아 보입니다. 파이프 방화벽 설정이 없습니다.
  • 문제는 일부 사용자에게 영향을 미치지만 전부는 아닙니다. 일부 네트워크 공유 그룹을 제외하고 도메인 그룹은 변경하지 않았습니다.
  • 관리자로 로그온했지만 여전히 파이프가 작동하지 않습니다.

도움을 주시면 감사하겠습니다! 감사합니다.

답변1

모든 사례를 파악하는 데 1.5일이 필요했습니다. 문서화를 위해 여기를 클릭하세요.

증상

  • 응용 프로그램으로 끌어서 놓기가 작동하지 않습니다.
  • 예를 들어 기본 앱과 추가 기능 간의 프로세스 간 통신이 작동하지 않습니다.

원인/배경

프로세스 간 통신은 Windows 명명된 파이프(UNIX 스타일 파이프와 혼동하지 말 것)를 통해 일부 앱에 대해 구현됩니다. MSDN 설명서를 참조하세요.http://msdn.microsoft.com/en-us/library/aa365590.aspx

Windows 이름 파이프가 작동하지 않는 데는 여러 가지 원인이 있을 수 있습니다. 파이프가 문제의 원인인지 확인하려면 MAKEPIPE 및 READPIPE 도구를 사용할 수 있습니다. 이 KB 문서에서는 테스트 절차를 설명합니다.http://support.microsoft.com/kb/68941 Sysinternals 도구 프로세스 탐색기는 현재 열려 있는 파이프를 조회하는 데 유용할 수도 있습니다. "찾기 -> 핸들 또는 DLL 찾기..." 옵션을 사용하고 "\Device\NamedPipe\" 패턴을 입력합니다. 어떤 프로세스에 어떤 파이프가 열려 있는지 보여줍니다.http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx

문제 해결

원인 1: Pipes 방화벽에 의해 애플리케이션이 차단되었습니다.

Windows에서는 응용 프로그램이 명명된 파이프를 사용하지 못하도록 차단할 수 있습니다. 이 방화벽은 일반적으로 활성화되지 않으며 레지스트리를 통해 구성됩니다. 여기에서 MS 지원 문서를 참조하세요.http://support.microsoft.com/kb/925890. 파이프 방화벽이 활성화되어 있지 않은지 확인하거나 Keytech 및 모든 추가 기능을 허용된 응용 프로그램 목록에 추가하십시오.

원인 2: 파일 및 프린터 공유 서비스가 활성화되지 않았습니다.

명명된 파이프는 파일 및 프린터 공유도 제어하는 ​​프로세스에 의해 활성화됩니다. Windows 서비스 도구를 사용하여 이 프로세스가 실행 중인지 확인하세요. 서비스 이름은 서비스 목록에 "서버"로 표시됩니다. 서비스 이름은 LanmanServer이고 EXE는 C:\Windows\system32\svchost.exe -k netsvcs입니다.

원인 3: Windows 방화벽이 LanmanServer를 차단하고 있습니다.

Windows 방화벽은 명명된 파이프가 동일한 시스템의 프로세스 간 통신에만 사용되는 경우에도 차단할 수 있습니다. 특히 도메인 및 로컬 방화벽 규칙으로 인해 충돌이 발생할 수 있습니다. "Windows 방화벽 허용 프로그램" 목록의 두 항목은 충돌을 나타냅니다. 대부분의 경우 이 문제는 "방화벽 상태 확인" 창을 사용하여 해결할 수 있습니다. 이 창에 권장 방화벽 규칙을 설정하는 옵션이 표시되면 이 옵션을 사용하여 파이프를 차단 해제할 수 있는 경우가 많습니다. 도메인 방화벽 규칙과 함께 먼저 도메인에서 PC 가입을 해제한 다음 파일 및 프린터 공유 서비스를 허용해야 하는 경우가 있습니다.

관련 정보