명명된 파이프

명명된 파이프는 파이프 서버와 하나 이상의 파이프 클라이언트 간의 통신을 위한 명명된 단방향 또는 이중 파이프입니다. 명명된 파이프의 모든 인스턴스는 동일한 파이프 이름을 공유하지만 각 instance 자체 버퍼와 핸들을 가지며 클라이언트/서버 통신을 위한 별도의 통로를 제공합니다. 인스턴스를 사용하면 여러 파이프 클라이언트에서 동일한 명명된 파이프를 동시에 사용할 수 있습니다.

모든 프로세스는 보안 검사에 따라 명명된 파이프에 액세스할 수 있으므로 명명된 파이프는 관련 프로세스 또는 관련 없는 프로세스 간에 쉽게 통신할 수 있습니다.

모든 프로세스는 서버와 클라이언트의 역할을 할 수 있으므로 피어 투 피어 통신이 가능합니다. 여기서 사용된 것처럼 파이프 서버라는 용어는 명명된 파이프를 만드는 프로세스를 참조하고, 파이프 클라이언트라는 용어는 명명된 파이프의 instance 연결하는 프로세스를 나타냅니다. 명명된 파이프를 인스턴스화하는 서버 쪽 함수는 CreateNamedPipe입니다. 연결을 수락하는 서버 쪽 함수는 ConnectNamedPipe입니다. 클라이언트 프로세스는 CreateFile 또는 CallNamedPipe 함수를 사용하여 명명된 파이프에 연결합니다.

명명된 파이프는 동일한 컴퓨터의 프로세스 간 또는 네트워크를 통해 다른 컴퓨터의 프로세스 간에 통신을 제공하는 데 사용할 수 있습니다. 서버 서비스가 실행 중인 경우 명명된 모든 파이프에 원격으로 액세스할 수 있습니다. 명명된 파이프를 로컬로만 사용하려는 경우 NT AUTHORITY\NETWORK에 대한 액세스를 거부하거나 로컬 RPC로 전환합니다.

자세한 내용은 아래 항목을 참조하세요.