일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 파이어버드
- winsock
- Delphi
- Visual Basic
- Visual Studio 2005
- 입문
- PostgreSQL
- 소니
- 파라미터
- 셋업
- 시리얼 통신
- dll
- MySQL
- WIN32 SDK
- VB.NET
- 문자열
- 델파이
- c#
- 설치
- 기초
- 초보
- 인스톨
- Firebird
- vb
- xml
- MFC
- 데이터베이스
- SQL
- 예제
- SDK
- Today
- Total
목록CreateNamedPipe (2)
프로그래밍 노트
파이프를 만들면 클라이언트가 접속하는 것을 기다려야된다. 일반적으로 스래드를 만들어 기다리게 한다. 이 예제는 클라이언트에서 보낸 자료를 표시하게만 한다. 스레드는 영구 루프로 만들고 그 안에서 ReadFile함수를 호출한다. 클라이언트가 아무것도 쓰지 않았을때에 ReadFile을 하면 에러가 됨으로 대기 함수를 사용하여 이벤트를 기다리는 것으로 한다. 클라이언트 쪽에서 쓰기 직전에 이벤트를 시그널 상태로 한다. 루프 안에서 읽기가 끝나면 바로 이벤트를 비시그널 상태로 하고 다음의 쓰기를 기다리는 상태로 한다. 프로그램을 종료 할때는 클라이언트 쪽에서 quit라 써서 보낸다. 서버쪽에서는 읽어들인 문자열이 quit이면 루프에서 빠져나와 처리를 종료한다. main 함수 이름있는 파이프를 만들고 이벤트를 만..
CreateNamedPipe으로 파이프를 만들려고 하는데 핸들을 작성하는데 에러가 났다. GetLastError()로 에러코드를 찾아보면 밑의 에러 코드가 돌아왔다. 123 : ERROR_INVALID_NAME The filename, directory name, or volume label syntax is incorrect. 인터넷에서 열심히 문제점을 무엇인가 찾아봐도 특별한 정보가 없었다. 문제의 코드 ====================================================================== hPipe = CreateNamedPipe("\\\\.\\pipe\\pipetest", PIPE_ACCESS_INBOUND, // 오픈 모드 PIPE_TYPE_BYTE | P..